所以我写了一个程序,我想传递一个文件名和一个整数或只是一个整数.什么是确定哪个参数是整数的最佳方法?这就是我所拥有的:
import sys
if len(sys.argv) > 1):
for e in sys.argv:
try:
bio = map(e, int)
except:
pass
Run Code Online (Sandbox Code Playgroud)
提前致谢
您可以使用字符串isdigit()方法检查参数是否为整数:
import sys
if len(sys.argv) > 1:
for e in sys.argv:
if e.isdigit():
# all characters in e are digits and there is at least one character in e
else:
# it is possibly your filename argument
Run Code Online (Sandbox Code Playgroud)
但是,我应该鼓励你给argparse库提供机会:http://docs.python.org/dev/library/argparse.html
import argparse
parser = argparse.ArgumentParser(description = 'A simple description')
parser.add_argument('-f', action = 'store', dest = 'filename', required = False)
parser.add_argument('-n', action = 'store', dest = 'n', required = True, type=int)
arguments = parser.parse_args()
print arguments.n
print arguments.filename
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1859 次 |
| 最近记录: |