繁体   English   中英

Python输入小数和整数(浮点数)

[英]Python Input Decimal Numbers and Whole Numbers (Float)

我想输入一个数字,例如8 8.5 7 3 4 5.5 8 9 10.5并输入列表。

我已经尝试过下面的代码,但是:

我的输入:

尺寸:9.5 9 10 10.5 3 4 8 7.5

我的输出:

[9.5、9.0、10.0、10.5、3.0、4.0、8.0、7.5]

我想要的输出:

[9.5、9、10、10.5、3、4、8、7.5]

select_sizes = [float(x) for x in input('Sizes: ').split()]
print(select_size)

我有我刮掉的这个列表----- size_ids列表:['91 | 10.5','150 | 9.5','28 | 4','29 | 5','22 | 8','23 | 9','24 | 10','25 | 11','26 | 12'] ---------输入列表的示例:[5、5.5、6、7、8.5、10.5],基本上我想使用我输入的列表,如果上面的size_ids列表与输入列表中的第一件事匹配,它将在size_ids列表中获得该数字作为fsize。

[float(x) if '.' in x else int(x) for x in input('Sizes: ').split()]

那就是您想要的,但是在列表中混合使用不同的类型并不是一件好事,实际上您可以使用浮点数,并且不会停止任何操作。

如果只需要格式设置,则可以使用%g说明符来打印浮点数,而不要在结尾加上0(存储浮点数和整数的混合不是一个好主意):

print(", ".join("%g" % x for x in select_size))

将打印

9.5, 9, 10, 10.5, 3, 4, 8, 7.5

当然,您可以选择通过手动将方括号添加到结果字符串中来添加方括号(但是您真的需要吗?)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM