gpt4 book ai didi

python - [字符串变量]>打印特殊字符

转载 作者:太空宇宙 更新时间:2023-11-03 15:26:55 25 4
gpt4 key购买 nike

我面临着一个奇怪的情况..将变量设置为字符串后,我尝试打印该变量并获取字符替换为特殊字符的字符串..

file_version_cmd="wmic datafile where name='C:\\\Program Files (x86)\\\Citrix\\\ICA Client\\\4.1\\\wfcrun32.exe'"
print(file_version_cmd)

打印的输出是:wmic 数据文件,其中 name='C:\Program Files (x86)\Citrix\ICA Client\♦.1\wfcrun32.exe'

“..4.1..”被替换为“..♦.1..”

感谢您的帮助

最佳答案

您的字符串中有 '\\\4.',它使用 \ooo 八进制值转义序列为 '\4' 创建了不可打印的字节。这些数字被解释为八进制数字

默认的 \xhh 语法用于以十六进制表示该值。

您可以使用原始字符串文字重写您的字符串:

file_version_cmd = r"wmic datafile where name='C:\Program Files (x86)\Citrix\ICA Client\4.1\wfcrun32.exe'"

file_version_cmd = "wmic datafile where name='C:\\Program Files (x86)\\Citrix\\ICA Client\\4.1\\wfcrun32.exe'"

以上两个代码片段都会导致:

wmic datafile where name='C:\Program Files (x86)\Citrix\ICA Client\4.1\wfcrun32.exe'

此外,您可以使用正斜杠,并且大多数 Windows API 在文件名中接受两种类型的斜杠分隔符(如果文件名路径将由 python 本身使用,但可能无法按预期工作):

file_version_cmd = "wmic datafile where name='C:/Program Files (x86)/Citrix/ICA Client/4.1/wfcrun32.exe'"

您可以引用this documentation如果你想了解更多关于Python词法分析器的知识。

关于python - [字符串变量]>打印特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43066380/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com