Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python I';我卡住了。我检查了整个代码,无法';我没有发现任何错误_Python - Fatal编程技术网

Python I';我卡住了。我检查了整个代码,无法';我没有发现任何错误

Python I';我卡住了。我检查了整个代码,无法';我没有发现任何错误,python,Python,好的,基本上,我正在制作一个程序,允许我列出即将到来的GCSE的修订主题。我的代码如下所示,但是txt文件没有被写入!! 如果有人有时间,如果您能告诉我如何: A) 使“需要另一个主题”问题无限大,直到用户说“n”(否) B) 用相同的名称覆盖现有文件 代码: file.close()文件 打印(“确定!所以,“+subject+”Revision Topics.txt已保存到文档下的GCSE修订文件夹中。\n\n修订成功!”) 结束代码 非常感谢您的帮助,非常感谢使用循环的魔力来解决您的第一个

好的,基本上,我正在制作一个程序,允许我列出即将到来的GCSE的修订主题。我的代码如下所示,但是txt文件没有被写入!! 如果有人有时间,如果您能告诉我如何: A) 使“需要另一个主题”问题无限大,直到用户说“n”(否) B) 用相同的名称覆盖现有文件

代码:

file.close()文件 打印(“确定!所以,“+subject+”Revision Topics.txt已保存到文档下的GCSE修订文件夹中。\n\n修订成功!”)

结束代码


非常感谢您的帮助,非常感谢使用循环的魔力来解决您的第一个问题

print("Which subject are we doing today?")
subject = input("Subject: ")
wfile = open(subject + " Revision Topics.txt", "w")
wfile.write("Here are a list of " + subject + " topics that need revising:\n")
print("Got topics to revise?")
choice = input("y or n: ")
topics = []
while (choice != 'n'):
    print("Which topic needs revising?")
    topic = input()
    topics.append(topic)
    print("Any more?")
    choice = input("y or n: ")

wfile.write('\n'.join(topics))
wfile.close()
print("Ok! So, " + subject + " Revision Topics.txt has been saved to the GCSE Revision folder under Documents.\n\nGood Luck Revising!")

至于你的第二个问题,哪一部分没有写?是否正在创建文件?如果您使用管理员权限运行该怎么办?

为了始终确保您的文件正确关闭,最好使用
和open(something)作为名称

with open(subject + " Revision Topics.txt", "w") as output_file:
    output_file.write("Here are a list of " + subject + " topics that need revising:\n")
    while True:
        output_file.write(input("Which topic needs revising?") + '\n')
        if input("Any more?") != "y":
            break

上面的代码将处理文件的打开、写入和关闭-使用此方法,您不必记住关闭文件。

这真的是您想要解决的问题的最小示例吗?您确实需要了解循环:)您忘记了
file.close()
。另外,不要调用变量
文件
,存在这样一个标准模块,所以你在这里跟踪它。同意@jpw的观点,
如果
-树有点糟糕,主要是因为这样的结构非常难读取和调试谢谢@Chuck,我会在CodeCademy上查看它。值得欣赏的传说。非常感谢,@ForceBru解决了第二个问题-忘记提交关闭duhh!我不明白这是怎么回事。当程序退出时,文件肯定会自动关闭吗?@JohnGordon同意,我只是添加了关闭,因为这是标准做法,但我也不能复制这个问题。FreddieWorth,如果我的答案回答了你的问题,请随意选择正确的答案!
with open(subject + " Revision Topics.txt", "w") as output_file:
    output_file.write("Here are a list of " + subject + " topics that need revising:\n")
    while True:
        output_file.write(input("Which topic needs revising?") + '\n')
        if input("Any more?") != "y":
            break