运行python脚本而不在末尾打印换行符?

运行python脚本而不在末尾打印换行符?,python,Python,每当我运行python脚本时,最后还会打印一行新行 我能阻止这种情况的唯一方法是在最后使用posix.\u exit0来避免Python的清理代码。有没有更便携的方法 抱歉,如果这是一个重复的问题/似乎很容易回答。不幸的是,我只看到关于没有换行符的打印的问题 示例脚本: import os #nothing actually done 非便携式解决方案: import os,posix #nothing actually done posix._exit() 操作系统:Windows 使用:

每当我运行python脚本时,最后还会打印一行新行

我能阻止这种情况的唯一方法是在最后使用posix.\u exit0来避免Python的清理代码。有没有更便携的方法

抱歉,如果这是一个重复的问题/似乎很容易回答。不幸的是,我只看到关于没有换行符的打印的问题

示例脚本:

import os
#nothing actually done
非便携式解决方案:

import os,posix
#nothing actually done
posix._exit()
操作系统:Windows
使用:cygwin中的Python、本机PyPy测试此脚本可以执行您想要的操作:

import sys

sys.stdout.write("Hello world")

诀窍是避免使用内置的print语句。

此脚本可以执行您想要的操作:

import sys

sys.stdout.write("Hello world")

诀窍是避免使用内置的print语句。

您描述的不是正常的python行为,因此您的设置可能有些奇怪。尝试通过剥离python的功能来调试它:使用-E ignore-environment选项调用python和/或-S don-load-site。如果这没有帮助,请查看其他python调用选项以获取想法,或者尝试使用调试器


自从posix.\u exit0以来,站点中可能有什么东西?正在设置生成换行符的退出处理程序。查找sys.exitfunc和模块atexit,并检查它们是否正在使用。

您描述的不是正常的python行为,因此您的设置可能有些奇怪。尝试通过剥离python的功能来调试它:使用-E ignore-environment选项调用python和/或-S don-load-site。如果这没有帮助,请查看其他python调用选项以获取想法,或者尝试使用调试器


自从posix.\u exit0以来,站点中可能有什么东西?正在设置生成换行符的退出处理程序。查找sys.exitfunc和模块atexit,并检查它们是否正在使用。

您的意思是:“>python myscript.py”和get'>python myscript.py>”,而不提示移到下一行?@JoshRagem,有点像。我实际上得到了两行新代码,一行是我为运行脚本而键入的,另一行是Python打印的。我想让它移到下一行,而不是留下一个空行。什么操作系统?我的没有那么做。那么,不幸的是,我什么都没有。虽然cygwin上的PyPy与Ubuntu.os上的CPython相去甚远,但您的设置与我的设置相差甚远。_exit0应该是可移植的,您的意思是:“>python myscript.py”和“>python myscript.py>”而不需要移动到下一行吗?@JoshRagem,有点”。我实际上得到了两行新代码,一行是我为运行脚本而键入的,另一行是Python打印的。我想让它移到下一行,而不是留下一个空行。什么操作系统?我的没有那么做。那么,不幸的是,我什么都没有。虽然cygwin上的PyPy与Ubuntu.os上的CPython相去甚远,但您的设置确实与我的设置相去甚远。即使只有“导入操作系统”,exit0也应该是可移植的。新的一行仍然由python打印。即使只有“导入操作系统”,新的一行仍然由python打印。