在Pycharm中的Python代码中找不到空字节?
在复制/粘贴代码期间,我经常在Python代码中获得在Pycharm中的Python代码中找不到空字节?,python,null,pycharm,Python,Null,Pycharm,在复制/粘贴代码期间,我经常在Python代码中获得null字节。Python本身报告模块的一般错误,并且不指定空字节的位置。我选择的IDE,比如PyCharm,并没有对此进行检查,也并没有在代码中看到空字节 那么,在Python代码中查找null字节的一般方法是什么 λcat main.py 导入helloworld λcat helloworld.py 打印(“你好,世界!”) λpython main.py 回溯(最近一次呼叫最后一次): 文件“main.py”,第1行,在 导入hell
null
字节。Python本身报告模块的一般错误,并且不指定空字节的位置。我选择的IDE,比如PyCharm,并没有对此进行检查,也并没有在代码中看到空字节
那么,在Python代码中查找null
字节的一般方法是什么
λcat main.py
导入helloworld
λcat helloworld.py
打印(“你好,世界!”)
λpython main.py
回溯(最近一次呼叫最后一次):
文件“main.py”,第1行,在
导入helloworld
ValueError:源代码字符串不能包含空字节
λpython helloworld.py
文件“helloworld.py”,第1行
世界你好!
^
SyntaxError:扫描字符串文字时下线
λcat-A helloworld.py
打印(‘你好,世界!^@’)
该问题可能是由复制/粘贴引起的,因为很难在键盘上键入这样的字符
那么,在Python代码中查找空字节的一般方法是什么
我觉得没有必要每次都检查源代码中的NUL CHCRATERS。我使用源代码已经超过10年了,而且我从来没有遇到过这样的复制/粘贴问题,即使我对许多原型和MCVE使用复制/粘贴
因此,检查源代码的触发器正是一条错误消息,比如来自Python的错误消息
使用哪种工具?十六进制编辑器,因为它将显示NUL字符。对于Windows,我选择的是免费软件
在Linux上,命令
grep-Pa'\x00'helloworld.py
应该可以使用。Python中没有null
byte。像byte这样的原始数据类型只能在我所知道的所有语言中都有值。我想,Python中甚至根本没有byte
数据类型。因此,要么你说的是字节序列,可能是none
或其他内容。可能最好显示您的代码。这是“官方”错误消息,如果您不相信,我可以为您生成。是的,请查看一些代码。空字节位于感叹号和结束引号之间。
λ cat main.py
import helloworld
λ cat helloworld.py
print('Hello world! ')
λ python main.py
Traceback (most recent call last):
File "main.py", line 1, in <module>
import helloworld
ValueError: source code string cannot contain null bytes
λ python helloworld.py
File "helloworld.py", line 1
print('Hello world!
^
SyntaxError: EOL while scanning string literal
λ cat -A helloworld.py
print('Hello world!^@')