Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 打印列表项及其X子序列_Python_List_Loops - Fatal编程技术网

Python 打印列表项及其X子序列

Python 打印列表项及其X子序列,python,list,loops,Python,List,Loops,输入列表: a = ['Dog', 'Cat', 'Bird', 'Horse'] 我的代码: For i in range(len(a)): word = a[i] if word == 'Cat' b = open('file.txt','w') b.write(a[i]) 现在,代码将迭代并将Cat写入一个新文件,但我希望让我的程序编写Cat和后续字符串,在这种情况下是Bird和Horse 我能做点什么吗?i、 e:b.writea[i:]或

输入列表:

a = ['Dog', 'Cat', 'Bird', 'Horse']
我的代码:

For i in range(len(a)):
    word = a[i]
    if word == 'Cat'
       b = open('file.txt','w')
       b.write(a[i])
现在,代码将迭代并将Cat写入一个新文件,但我希望让我的程序编写Cat和后续字符串,在这种情况下是Bird和Horse

我能做点什么吗?i、 e:b.writea[i:]或b.writea[i:2]

编辑: 通过使用以下方法解决:

b、 写入'\n'.joina[i:i+X],其中X是后续项

我仍然对更好的答案持开放态度。谢谢。

您可以:

b.write('\n'.join(a[i:]))

如果要在字符之间拆分换行符,如果需要空格,只需使用“”。joina[i:]例如,

您可以跳过for循环,只需执行以下操作:

with open('f', 'w') as f:
    f.write('\n'.join(a[a.index('Cat'):]))

您可以先打开文件,然后在列表上迭代;为什么需要迭代呢?您不能直接将列表写入文件吗?如果“Cat”一词在列表中不止一次怎么办?您可以执行“\n”.joina[i:i+3]并抛出索引器以防万一或在之前捕获它