真的不确定这里有什么问题,我希望 python 从列表中选择一个随机名称,这是有效的,因为我已经打印了变量。
然后我想将随机名称存储在文本文件中。该文件在那里,但它只是空的。任何帮助将不胜感激。
import random
names = "Balo", "Bandugl", "Baroro", "Cag", "Charoth", "Duglinglabat", "Dulko", "Fangot"
rand_name = random.choice(names)
c1= open( "character_one.txt", "w")
c1.write(rand_name)
c1.close
为什么 python 不将随机选择写入文本文件?
最佳答案
您的代码看起来不错,只是您实际上并没有在末尾调用 c1.close
。
你需要在它后面添加()
来做到这一点:
import random
names = "Balo", "Bandugl", "Baroro", "Cag", "Charoth", "Duglinglabat", "Dulko", "Fangot"
rand_name = random.choice(names)
c1 = open("character_one.txt", "w")
c1.write(rand_name)
c1.close()
这就是为什么使用 with-statement 是个好主意的原因打开一个文件:
import random
names = "Balo", "Bandugl", "Baroro", "Cag", "Charoth", "Duglinglabat", "Dulko", "Fangot"
rand_name = random.choice(names)
with open("character_one.txt", "w") as c1:
c1.write(rand_name)
这样做可以确保文件在您完成后关闭。
关于python - 无法将列表中的随机选择写入文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21469223/