Skip to main content
 首页 » 编程设计

Python——输入 float 参数列表

2025年05月04日15zdz8207

我在脚本中从用户那里获取浮点参数,想知道是否有更好/有效的方法,包括一个选项,比如如果用户只提供一个参数(或根本不提供),有什么方法可以让我默认剩下两个为 0.0?并且可能是一些更好的存储在文件中的方式

#inside a loop to keep getting values          
line = raw_input("Enter three parm values: ") 
x=line.split(' ') 
fa=fb=fc=0.0  
 
a=x[0] 
b=x[1] #what if user only supplies only one? 
c=x[2] # how can i leave this or default to 0.0? 
 
fa=float(a) 
fb=float(b) 
fc=float(c) 
 
file=open(inputFile, 'a+') 
file.write(name) 
file.write("\t") 
file.write(a) 
file.write(" ") 
file.write(b) 
file.write(" ") 
file.write(c) 
file.write("/n") 

请您参考如下方法:

为什么不使用列表来保存任意数量的变量?

floats = [float(var) if var else 0.  
          for var in raw_input("Enter three parm values: ").split(' ')] 
with open(inputFile, 'a+') as f: 
    f.write(name + '\t' + ' '.join(str(f) for f in floats) + '\n') 

如果你想用最多三个参数的额外零填充这个列表,那么你可以这样做:

floats = [1]  # For example. 
if len(floats) < 3: 
    floats += [0] * (3 - len(floats)) 
 
>>> floats 
[1, 0, 0]