我刚刚在python中编写了一个小程序,它是:
#!/usr/bin/env python
print "hello"
它适用于Windows。当我在linux中键入此代码时,它也可以工作。
但是当我在我的VBox中将python文件从windows复制到linux时,此代码不起作用,并出现错误:
:没有这样的文件或目录
为什么会这样?我应该怎么做才能解决它?
答案 0 :(得分:0)
也许你因为Windows和Linux上的不同行结尾而得到错误? Windows使用“\ r \ n”而Linux仅使用“\ n”。
你可以在linux上编写可以摆脱“\ r”的脚本,例如:
编辑:我已经意识到回车只能在二进制模式下看到。所以脚本应该做这样的事情
with open('myscript.py', 'rb') as file:
data = file.read()
data = data.replace(b'\r\n', b'\n')
with open('myscript.py', 'wb') as file:
file.write(data)