如何格式化不使用 Itertools 或 Functools 创建的列表的累积和
num_list = [12, 16, 17, 2, 5, 19, 24, 27, 42]
您好,我正在尝试格式化不使用 itertools 创建的数字列表的累积和。这是我到目前为止的代码。我希望打印时累积列表中的每个数字的宽度为 10,但我不确定如何实现。
def Cumulative(lists):
num_list = []
length = len(lists)
num_list = [sum(lists[0:x:1]) for x in range(0, length+1)]
return num_list[1:]
print (Cumulative(num_list))
F 字符串格式显然没有帮助。
num_list = [12, 16, 17, 2, 5, 19, 24, 27, 42]
Hello, I'm trying to format the cumulative sum of a list of numbers created without itertools. This is the code I have so far. I would like each number in the cumulative list to have a width of 10 when printed, but I am not sure how.
def Cumulative(lists):
num_list = []
length = len(lists)
num_list = [sum(lists[0:x:1]) for x in range(0, length+1)]
return num_list[1:]
print (Cumulative(num_list))
F string formatting obviously proved to be unhelpful.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用 f 字符串来格式化文本中的每个列表项(整数)。
输出字符串对齐的语法由
>
定义示例:
同样,在您的代码中,您可以对内部
sum()
的结果使用此格式您的列表理解:输出将是:
这将满足您的要求:
注意:现在列表由字符串组成,而不是整数
或者:
如果您不这样做不想更改每个项目的类型,那么您可以保留返回整数列表的函数。
您可以在打印每个列表项时在它们周围添加 f 字符串对齐格式。例如:
输出:
You can use f-strings to format each list item (integer) within text.
The syntax of the alignment of the output string is defined by
>
Example:
Similarly, in your code, you can use this formatting on the result of the
sum()
inside your list comprehension:The output will be:
This will satisfy your requirement:
Note: now the the list is made up of strings, not integers
Alternatively:
If you don't want to change the type of each item, then you can keep the function returning the list of integers.
You can add the f-string alignment formatting around each list item as you print them. For example:
Output: