我有这个生成随机数的代码。我希望它在每次运行时都将随机数保存在新的行/行上(代码)。
我尝试添加newLine
和newRow
,但它不起作用。
import csv
import random
newFile = open("random.csv",'w',newline='')
newWriter = csv.writer(newFile, dialect='excel')
newRow = []
case_number = random.randint(0,1000000000)
print("Your problem has been stored. We have allocated a case number which will be sent off to a technician. Please take a note of your case number: ", str(case_number))
newRow.append(case_number)
newWriter.writerow(newRow)
newFile.close()
我怎样才能缩短这段代码?
任何帮助将不胜感激。
谢谢!
答案 0 :(得分:1)
我对原始代码进行了一些小修改。
取代" w"与" a" (追加)@ JRodDynamite建议 - 为了保存文件中的先前数据,并附加新数据
添加"" - 正如@Display Name所建议的那样 - 确保资源得到清理"当使用它的代码完成运行时。
将case_number定义为string(随机int的强制转换)。
我继续使用@Jason Cole使用的CSV编写器。
我删除了newRow和追加。
import csv
import random
with open("random.csv",'a') as newFile:
newWriter = csv.writer(newFile, dialect='excel')
case_number = str(random.randint(0,1000000000))
print("Your problem has been stored. We have allocated a case number which will be sent off to a technician. Please take a note of your case number: ", case_number)
newWriter.writerow([case_number])
newFile.close()