Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/357.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
在Pycharm中的Python代码中找不到空字节?_Python_Null_Pycharm - Fatal编程技术网

在Pycharm中的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

在复制/粘贴代码期间,我经常在Python代码中获得
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!^@')