如何在python中形成一个给定的元素列表以从中创建另一组列表?
def生成周期(列表,startElement): 一个循环,它形成了由上一个元素组成的底部列表 如果我将start元素和列表传递给该函数,它将按如下方式打印:如何在python中形成一个给定的元素列表以从中创建另一组列表?,python,python-2.7,python-3.x,wxpython,ipython,Python,Python 2.7,Python 3.x,Wxpython,Ipython,def生成周期(列表,startElement): 一个循环,它形成了由上一个元素组成的底部列表 如果我将start元素和列表传递给该函数,它将按如下方式打印: List1 =['000095', '000094', '000092', '000101', '000099', '000096', '000095'] 我知道它有点不够清楚,但这就是我所能指出的 def生成周期(列表1,startElement): makecycle(list1, 000094) it should print:
List1 =['000095', '000094', '000092', '000101', '000099', '000096', '000095']
我知道它有点不够清楚,但这就是我所能指出的 def生成周期(列表1,startElement):
makecycle(list1, 000094) it should print:
['000094', '000092', '000101', '000099', '000096', '000095', '000094']
and if pass
makecycle(list1, 000101) it should print:
['000101', '000099', '000096', '000095', '000094', '000092', '000101']
and if pass
makecycle(list1, 000092) it should print:
['000092', '000101', '000099', '000096', '000095', '000094', '000092']
ind=列表1.索引(startElement)
l=len(列表1)
i=ind
列表2=[]
当ind<(l-1)时:
list2.append(list1[ind])
ind=ind+1
对于范围(i)内的x:
如果列表1[x]不在列表2中:
list2.append(list1[x])
打印(列表2)
所有这些python标记是什么?不可能都是从写代码开始的。把你的代码贴在这里,告诉我们你到底遇到了什么问题。为什么你希望第一个和最后一个项目是一样的?这使得这个简单的任务比它应该做的要难一些。当我用这些值调用函数makecycle(列表1,000094)时,它非常接近,它打印:['000094','000092','000101','000099','000096','000094'],但它应该打印的元素缺少:['000094','000092','00001','000099','000095','000094']感谢Manan,当我通过000096时,它返回:['000096','000096']一般输出应该是什么?请指定。如果我将000096传递给给定列表的第二个最后元素,则输出取决于传递的列表和起始元素,因此新形成的列表将从该元素和下一个元素开始,右边(000095)是什么,左边是什么,不包括(000095)的重复项,即“000095”、“000094”、“000092”,'000101','000099',然后以起始000096结尾,然后输出为:['000096',000095','000094','000092','000101','000099','000096','000095']现在检查一下,可以吗?
def makecycle(list1,startElement):
ind = list1.index(startElement)
l = len(list1)
i = ind
list2 = []
while ind < (l-1):
list2.append(list1[ind])
ind = ind + 1
for x in range(i):
if list1[x] not in list2:
list2.append(list1[x])
print(list2)