字符串“?”&引用;改为;“数据”;用Python

字符串“?”&引用;改为;“数据”;用Python,python,command-line,arguments,sentinel,Python,Command Line,Arguments,Sentinel,在编写一个小型Python脚本时,我注意到当字符串“??”作为命令行参数传递时,它会在程序执行期间转换为“数据”。现在,我不确定这是字符串还是其他类型的数据。考虑到搜索条件,要找到这方面的信息是很困难的 为什么会发生这种情况?这意味着什么??是一个shell通配符,它匹配任何字符(类似于正则表达式中的)。因此,一个不带引号的?将扩展到包含4个字符的所有文件名data可能是目录中按字母顺序排列的第一个这样的文件名 参见 echo ???? 如果您想将?逐字传递给脚本,请引用它 python yo

在编写一个小型Python脚本时,我注意到当字符串
“??”
作为命令行参数传递时,它会在程序执行期间转换为
“数据”
。现在,我不确定这是字符串还是其他类型的数据。考虑到搜索条件,要找到这方面的信息是很困难的


为什么会发生这种情况?这意味着什么?

是一个shell通配符,它匹配任何字符(类似于正则表达式中的
)。因此,一个不带引号的
将扩展到包含4个字符的所有文件名
data
可能是目录中按字母顺序排列的第一个这样的文件名

参见

echo ????
如果您想将
逐字传递给脚本,请引用它

python yourscript.py '????'

在运行脚本的目录中有一个名为
data
的文件吗?天哪,我觉得很傻。有趣的是,我试图在脚本本身中使用“?”作为通配符。我不能保证任何参数都会被引用,所以我必须使用不同的字符。非常感谢。