如何列出蟒蛇
问题描述:
使用水珠所有用户指定文件,这就是我要完成的: 在我的目录,有许多文件,但都遵循一个格式如何列出蟒蛇
aaa001 aaa002 aaa003 bbb001 bbb002 bbb003 ccc001 ccc002 ccc003 等
我想要做的就是在“文件的家族”,一个用户指定,这意味着,我将读取用户的输入,以他们想要哪个文件系列(例如,如果用户输入AAA,我想列出aaa001,aaa002,aaa003)
我试图使用/运行命令
files = glob.glob("%userInput.*\.csv")
userInput是我使用的存储变量用户的选择。
但是,它似乎没有得到任何东西,这意味着我没有正确使用命令语法。有人可以阐明我做错了什么吗?谢谢。
答
有一个旧(2.x的)字符串格式化认为是这样的伎俩:
files = glob.glob("%s*.csv" % userInput)
在巨蟒(特别是3.X)的新版本你想要的东西,如:
files = glob.glob("{}*.csv".format(userInput))
的第二个例子应该使用Python 2.7+(实际上可能是2.6+,因为它使用了明确的位置参数说明符),并且可以简化为“{} * .csv”.format(userInput)'。 – dano 2014-10-03 22:59:32
感谢您的澄清,@dano;字符串格式的改变是我尝试将自己转换为Python 3的最大障碍之一,而且我显然还没有真正设法掌握它们。 – TML 2014-10-03 23:02:41
@TML绝对没有理由避免经典格式。根据哪个更适合给定的任务来选择使用哪一个。尽管如此,我更喜欢使用命名参数的新样式。 – o11c 2014-10-03 23:10:09