大佬教程收集整理的这篇文章主要介绍了为什么这个带有shebang#!/ bin / sh和exec python的代码片段在4个单引号内起作用?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
Python支持三引号字符串:
'''something'''
SHell仅支持单引号字符串:
'something'
通过使用 四个@H_674_16@ 引号,sh
将其视为2个空字符串,但Python将前三个视为三引号字符串的开头,并将第四个作为字符串值的一部分。
然后,该行的其余部分由解释为命令sh
,但由Python解释为字符串的一部分。
在#
随后形成尽可能评论sh
而言,但它仍然是一个字符串到Python,有三个结束引号关闭它。
因此,总结一下:
sh
sees: 空字符串(''
)@H_674_16@ - 空字符串(''
)@H_674_16@ - 命令(exec python -u -- "$0" ${1+"$@"}
)@H_674_16@ - 注释(# '''
)@H_674_16@
'exec python -u -- "$0" ${1+"$@"} #
)@H_674_16@
因此sh
执行该命令,并python -u
--
用脚本名称和其余命令行参数替换自身,Python读取该文件,然后看到一个初始字符串文字,该文字不会随处可见。
因为它是文件中的第一个字符串文字,所以它将被设置为__main__
模块的文档字符串,但这与主脚本无关紧要。
以上是大佬教程为你收集整理的为什么这个带有shebang#!/ bin / sh和exec python的代码片段在4个单引号内起作用?全部内容,希望文章能够帮你解决为什么这个带有shebang#!/ bin / sh和exec python的代码片段在4个单引号内起作用?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。