I';我试图将随机数写入一个文件,然后用Python中的行创建一个列表,但列表需要'\n';也
我正在使用一个函数创建随机数,并使用I';我试图将随机数写入一个文件,然后用Python中的行创建一个列表,但列表需要'\n';也,python,list,Python,List,我正在使用一个函数创建随机数,并使用\n在for循环中使用以下代码块将它们逐行写入名为random.txt的文件中: dosya.write(str(randomNumber)) dosya.write('\n') 我需要从行中创建一个列表,然后使用排序函数对该列表进行排序。我可以在该文件中逐行查看随机数,但当我使用readline()函数时,如下所示: List = open("random.txt").readlines() print List 输出为: ['22\n', '16\n'
\n
在for循环中使用以下代码块将它们逐行写入名为random.txt
的文件中:
dosya.write(str(randomNumber))
dosya.write('\n')
我需要从行中创建一个列表,然后使用排序函数对该列表进行排序。我可以在该文件中逐行查看随机数,但当我使用readline()
函数时,如下所示:
List = open("random.txt").readlines()
print List
输出为:
['22\n', '16\n', '1\n', '4\n', '4\n']
为什么我在我的号码后面看到
\n
?我试着只打印第一个或第二个元素,它没有显示任何额外的东西。整个列表有什么问题?当我使用sort函数时,它也需要\n
。循环每一行,将该行转换为int并附加到数组
f=open('random.txt','r')
array = []
for line in f: # read lines
array.append(int(line))
f.closed
.readlines()
方法读取每一行,包括以\n
结尾的行作为列表元素。
你可能希望你的随机数是整数。
将它们转换为int
也会使您的排序工作正常:
with open("random.txt") as fobj:
data = [int(line) for line in fobj]
带有的
打开文件,并承诺在您离开缩进后立即关闭该文件。打开的文件对象fobj
是可编辑的。因此,您可以直接在fobj
上编写一个列表,将每一行转换为一个整数。它会自动删除所有换行符n
List=[i.strip()for i in open(“random.txt”).readlines()]
很难理解您要做什么。你能试着正确格式化你的代码吗?使用大量换行符,并将所有代码缩进4个空格。