设置列表中所有元素的格式
我想打印一个数字列表,但我想在打印之前格式化列表中的每个成员。 例如,
theList=[1.343465432, 7.423334343, 6.967997797, 4.5522577]
我希望将上述列表作为输入打印以下输出:
[1.34, 7.42, 6.97, 4.55]
对于列表中的任何一个成员,我知道我可以使用以下命令对其进行格式化:
print "%.2f" % member
是否有命令/函数可以对整个列表执行此操作?我可以写一个,但想知道是否已经存在。
I want to print a list of numbers, but I want to format each member of the list before it is printed.
For example,
theList=[1.343465432, 7.423334343, 6.967997797, 4.5522577]
I want the following output printed given the above list as an input:
[1.34, 7.42, 6.97, 4.55]
For any one member of the list, I know I can format it by using
print "%.2f" % member
Is there a command/function that can do this for the whole list? I can write one, but was wondering if one already exists.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(8)
如果您只想打印数字,您可以使用一个简单的循环:
如果您想存储结果供以后使用,您可以使用列表理解:
然后您可以打印此列表以获取问题中的输出:
另请注意 < code>% 已被弃用。如果您使用的是 Python 2.6 或更高版本,则更喜欢使用
format
。If you just want to print the numbers you can use a simple loop:
If you want to store the result for later you can use a list comprehension:
You can then print this list to get the output as in your question:
Note also that
%
is being deprecated. If you are using Python 2.6 or newer prefer to useformat
.使用 "".format() 和生成器表达式的非常简短的解决方案:
A very short solution using "".format() and a generator expression:
对于Python 3.5.1,您可以使用:
结果是:
For Python 3.5.1, you can use:
The result is:
您可以使用列表理解、连接和一些字符串操作,如下所示:
You can use list comprehension, join and some string manipulation, as follows:
您可以使用地图功能
You can use the map function
如果您不需要保存您的值,请尝试这个:
输出:
Try this one if you don't need to save your values:
output:
您可以使用辅助函数:
用法:
You can use helper function:
usage:
您还可以使用 f 字符串和列表理解:
You can also use f-strings and a list comprehension: