Python 变量参数
Python arguments to variables
我是 python 的新手,正在努力将参数放入变量中。我试图只允许三个变量作为参数并将它们作为字符串放入 a
、b
和 c
。
#!/usr/bin/python
import sys
x = sys.argv[1:]
x = ' '.join(x)
if len(x) > 3:
print "Only three arguments"
else:
print "Too many arguments"
a,b,c=[[y] for y in x.split()]
print a
print b
print c
#!/usr/bin/python
import sys
if len(sys.argv)!=4:
print "Need to get 3 arguments"
sys.exit()
a=str(sys.argv[1])
b=str(sys.argv[2])
c=str(sys.argv[3])
print a
print b
print c
由于您希望参数作为标量,因此不需要 y
周围的 []
:
a,b,c = [y for y in x.split()]
但坦率地说,您甚至不需要进行连接拆分 - 您可以将一个数组分配给一系列以逗号分隔的标量:
a,b,c = sys.argv[1:]
同样,您不应该在连接的字符串上检查 len
,而应该在数组上检查。一个完整的例子:
#!/usr/bin/python
import sys
x = sys.argv[1:] # no joining!
if len(x) == 3:
print "Only three arguments"
a,b,c = x
print a
print b
print c
else:
print "Too many arguments"
这是工作代码:
import sys
args = sys.argv[1:]
if len(args) > 3:
print "Too many arguments"
for arg in args:
print(arg)
我是 python 的新手,正在努力将参数放入变量中。我试图只允许三个变量作为参数并将它们作为字符串放入 a
、b
和 c
。
#!/usr/bin/python
import sys
x = sys.argv[1:]
x = ' '.join(x)
if len(x) > 3:
print "Only three arguments"
else:
print "Too many arguments"
a,b,c=[[y] for y in x.split()]
print a
print b
print c
#!/usr/bin/python
import sys
if len(sys.argv)!=4:
print "Need to get 3 arguments"
sys.exit()
a=str(sys.argv[1])
b=str(sys.argv[2])
c=str(sys.argv[3])
print a
print b
print c
由于您希望参数作为标量,因此不需要 y
周围的 []
:
a,b,c = [y for y in x.split()]
但坦率地说,您甚至不需要进行连接拆分 - 您可以将一个数组分配给一系列以逗号分隔的标量:
a,b,c = sys.argv[1:]
同样,您不应该在连接的字符串上检查 len
,而应该在数组上检查。一个完整的例子:
#!/usr/bin/python
import sys
x = sys.argv[1:] # no joining!
if len(x) == 3:
print "Only three arguments"
a,b,c = x
print a
print b
print c
else:
print "Too many arguments"
这是工作代码:
import sys
args = sys.argv[1:]
if len(args) > 3:
print "Too many arguments"
for arg in args:
print(arg)