gpt4 book ai didi

python - 如何使用 Python 指定将哪些列打印到文本文件?

转载 作者:太空宇宙 更新时间:2023-11-04 10:35:20 25 4
gpt4 key购买 nike

这是我当前输出的示例:

['5216', 'SMITH', 'VICTORIA', 'F', '2009-12-19']

这是我的代码:

users1 = open('users1.txt','w')

with open('users.txt', 'r') as f:
data = f.readlines()

for line in data:
words = str(line.split())
#print words
f.seek(0)
users1.write(words)

我想读取 users.txt 并将信息分开以将其发送到 users1 和另一个我将调用的文本文件 users2。 (请记住,这是一种假设情况,我承认将这些信息分开是没有意义的,就像我在下面建议的那样。)

是否可以识别我想插入到每个文本文件中的特定列?

例如,如果我希望 users1.txt 包含,使用上面的示例输出,['5216','2009-12-19']users2.txt包含['SMITH','VICTORIA'],怎么办?

最佳答案

你可以 use slicing从列表中选择项目。例如,

In [219]: words = ['5216', 'SMITH', 'VICTORIA', 'F', '2009-12-19']

In [220]: [words[0], words[-1]]
Out[220]: ['5216', '2009-12-19']

In [221]: words[1:3]
Out[221]: ['SMITH', 'VICTORIA']

with open('users.txt', 'r') as f,\
open('users1.txt','w') as users1,\
open('users2.txt','w') as users2:
for line in f:
words = line.split()
users1.write(str([words[0], words[-1]])
users2.write(str(words[1:3])

在输出中包含括号 [] 是非标准的。为了可移植性和正确处理带引号的字符串和包含逗号分隔符的字符串,您最好使用 csv module :

import csv
with open('users.txt', 'rb') as f,\
open('users1.txt','wb') as users1,\
open('users2.txt','wb') as users2:
writer1 = csv.writer(users1, delimiter=',')
writer2 = csv.writer(users2, delimiter=',')
for line in f:
words = line.split()
writer1.writerow([words[0], words[-1]])
writer2.writerow(words[1:3])

关于python - 如何使用 Python 指定将哪些列打印到文本文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23641838/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com