擅长:python、mysql、java
<p>从用作函数的<code>print</code>语句中,我假设我们正在使用python3。移动提示是可选的,但会删除一行代码。另外,为了清楚起见,我将第二个<code>name</code>变量重命名为<code>pname</code>,并为名为<code>fname</code>的文件名启动了一个新变量。这样你可以检查每一个。也可以尝试去掉文件名中的冒号(正如Michael所建议的)</p>
<pre><code>if response == "save_pack":
name = input("What do you want to call it?\n")
fname = name + "-MinecraftText-turePack.txt"
pack = open(fname, "w")
for each in inventory:
pname, amount, recipe = each
pack.write(pname)
pack.close()
</code></pre>
<p>尽管这个答案稍微清楚一点,但您的原始示例在linux提示符下运行得很好。大多数非unix系统不喜欢文件名中的<code>:</code>。这里有一些特别适用于Windows的<a href="https://stackoverflow.com/questions/10386344/how-to-get-a-file-in-windows-with-a-colon-in-the-filename">background</a>。你知道吗</p>