我正在努力学习如何阅读和编写python,但这让我感到困惑,而且我似乎无法找到告诉我想要知道的任何地方。
我目前正在研究Collatz猜想问题:
list=[]
def collatz(a):
if a%2==0:
return a/2
else:
return (3*a)+1
number = input("Please enter range: ")+1
print "\n\n"
for x in range(1,number):
n=x
count=(-1)
while n>=1:
print "%s " % (n),
if n<x:
count += list[n-1]
n=0
if n==1:
n=0
n=collatz(n)
count+=1
print "\n\n%s: %s\n\n" % (x, count)
f.write("%s %s\n" % (x, count))
list.insert(x,count)
x+=1
我只想输出数据,以便我可以在excel中对其进行图形处理,同时也可以将数据保存在那里(而不是列表)以便稍后引用(所以,我说它运行到100,000,下次我输入它时,我希望它从100,001开始,并以与上面列表相同的方式访问文件中的数据。)
我正在努力学习如何自己动手,但出于某种原因,我一直感到困惑。
关于格式化,我想在第一列保存起始编号,然后将编号保存在第二列。
答案 0 :(得分:0)
使用csv库(或this link for python 3)来处理csv数据。它有读取和编写csv文件的方法,这些方法比你自己编写的任何东西都要好得多。
在这种情况下,我建议改为使用sqlite(python3 link)。这是一个允许您像访问数据库一样访问平面文件的工具,这可能会为您节省很多麻烦。