[英]Python - EOL while scanning string literal of an Import statement
我正在尝试使用命令行测试s3软件包,并说py -c 'import s3'
并且我收到字符串文字的EOL结尾错误。 即使有关EOL的大多数其他问题都涉及不使用右引号或转义字符,但mine是一个简单的import语句。 我的格式化方式可能有什么问题?
源代码没有任何问题(据我所知),这仅仅是因为您在命令行中使用了单引号,而不将其解释为以空格分组(在Windows上,我可以告诉您的是,因为您正在使用py
)。 只需使用双引号即可: py -c "import s3"
。 由于未将字符串作为完整参数传递,因此python解释器仅接收“ import”,这可能是无效的语法:)。 如果您想要一个简单的程序来显示为什么这在Windows中是如何发生的,我有这个:
import sys
print(sys.argv)
在Windows上:
C:\Users\Michael\Desktop>py argv.py 'a sentence'
['argv.py', "'a", "sentence'"]
在Linux上:
michael@Michael:/mnt/c/Users/Michael/Desktop$ python3 argv.py 'a sentence'
['argv.py', 'a sentence']
因此,在Windows上,在传递带有空格的命令行参数时,只需使用双引号而不是单引号,因为它们仍将在空格处分割。 在linux上,没关系。 再一次,您的问题的解决方案是键入:
py -c "import s3"
代替: py -c 'import s3'
祝你有美好的一天!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.