Python读取文件内容后,print是否仍会输出末尾换行符?
问题解答
为什么没有出现书中描述的末尾空行?
这不是Python 3.12的版本变化导致的,核心原因是你的文件和书中示例文件的末尾换行符不一致:
- 你的
pi_digits.txt最后一行2643383279末尾没有换行符,read()读取后得到的contents最后也不会带换行;print(contents)时,print()会自动在输出末尾加一个换行,所以最终输出就是文件内容+一个换行,紧接着Hello World!,不会有空行。 - 书中示例的文件最后一行末尾带有换行符,
read()读取的内容最后会多出一个换行,此时print(contents)会在这个换行的基础上再追加一个换行,就出现了额外的空行。
你可以验证一下:打开你的pi_digits.txt,在最后一行末尾按回车添加换行,再运行代码,就能看到书中描述的空行效果。
Python版本更新的相关问题
VS Code中的Python环境不会自动更新,更新方式分两种情况:
- 系统级Python:直接下载对应版本的Python安装包运行安装程序即可,可选择覆盖旧版本或并行安装。
- 虚拟环境(如你当前用的workspaces环境):虚拟环境的Python版本是创建时指定的,无法直接升级,需要重新创建虚拟环境并指定目标版本;如果使用
pyenv这类版本管理工具,可通过pyenv install 3.x.x安装新版本后切换使用。
内容的提问来源于stack exchange,提问作者voided
相关产品推荐
相关产品推荐

