如何在python中扫描、创建、读取和写入文本文件?
我一直在搞一个collatz程序,几天前我写了一个学习python的程序,最近加入了一个列表如何在python中扫描、创建、读取和写入文本文件?,python,Python,我一直在搞一个collatz程序,几天前我写了一个学习python的程序,最近加入了一个列表 from heapq import nlargest list=[] number = input("Please enter range: ")+1 def collatz(a): if a%2==0: return a/2 else: return (3*a)+1 for x in range(1,number): n=x
from heapq import nlargest
list=[]
number = input("Please enter range: ")+1
def collatz(a):
if a%2==0:
return a/2
else:
return (3*a)+1
for x in range(1,number):
n=x
count=(-1)
while n>=1:
print "%s " % (n),
if n==1:
n=0
n=collatz(n)
count+=1
print "\n\n%s: %s\n\n" % (x, count)
list.insert(x,count)
x+=1
print "%s\n\n" % (list)
现在,我希望能够保存数据输出,以便在excel中使用它,但也不必一直从1开始(假设我将其运行一次到10,然后再次运行,我希望它从10开始到20,就像我将其运行一次到20一样)。如果可能的话,我也希望它生成自己的文本文件,如果没有找到。
干杯。您要做的是将数据附加到CSV:
import csv
filename = "myfilename.csv"
with open(filename, 'a') as myfile:
writer = csv.writer(myfile)
writer.writerow(list)
'a'
表示追加。如果找不到任何文件,它将创建一个新文件<代码>'w'写入文件,如果再次运行该程序,将覆盖该文件。
使用writerow
编写单个列表(单行),使用writerows
编写列表(所有行)
然后,您可以稍后再次读取您的csv:
import csv
with open(filename, 'r') as myfile:
reader = csv.reader(myfile)
for row in reader:
print(row)
您可以创建一个数据帧,然后将其写入一个新的.csv文件
import pandas as pd
在代码末尾创建一个:df=pd.DataFrame(data=*一些数据,例如list*,index=i)
从数据帧到.csv文件:
这可能是个好的开始。干杯,我觉得我应该了解一下这一点。我在哪里可以了解它?网上有没有什么地方可以浏览csv文件的基础知识?感谢您的帮助,基本的python工具都很容易谷歌化。“PythonCSV”提供了一篇很好的文章:非常感谢,你知道我在哪里可以学到更多关于这方面的知识吗?现在对我来说这看起来真的很陌生…你可以点击我答案中的蓝色文本,它会带你到这些链接:@user7389469考虑到你是超级新手,我建议你坚持使用内置函数。虽然我真的很喜欢熊猫,但安装额外的软件包会给你的学习曲线增加额外的一层复杂性,而编写CSV确实不需要这些复杂性。
i = range(1, x)
df = pd.DataFrame(data=list, index=i)
print 'dataframe: ', df
df.to_csv('C:/Users/.../new_file.csv')