python - 如何在右对齐的情况下每行仅打印 3 个值?
问题描述
以下是我当前的代码。但是,我只想打印每行 3 个值,列之间有 5 个空格,右对齐。我试图让我的代码与下图相匹配。
定义格式():
import random
lst = []
for i in range(100):
lst.append(random.uniform(0, 1000)) #Get a random number btw 0 and 1000
num = eval(input('Enter number of values to retrieve: '))
for x in range(num+1):
print('${:>5,.2f}'.format(lst[x]), end=' ')
解决方案
不是最优雅的解决方案,但工作正常。包括正当理由。
import random
lst = []
for i in range(100):
lst.append(random.uniform(0, 1000)) #Get a random number btw 0 and 1000
num = eval(input('Enter number of values to retrieve: '))
groups_of_3 = [lst[0:num][i:i+3] for i in range(0, num, 3)]
for group in groups_of_3:
for value in group:
justfied_num = (str(value).split(".")[0] + "." + str(value).split(".")[1][0:2]).rjust(6)
print(f'${justfied_num}', end=' ')
print()
推荐阅读
- javascript - Redux:访问当前状态 - 最佳实践?
- ignite - 点燃:未能等待初始分区映射交换
- ios - 核心数据:NSManagedObjectContext 的 save() 方法需要一分钟多的时间来保存具有唯一约束的对象
- android - Android 模拟器错误“无法访问 SD 卡”
- javascript - 在 Vue.js 组件中定位和操作图表栏和标签
- jquery - 在 jquery datepicker 中仅启用 2 个日期,例如当前日期和昨天日期
- php - 创建客户属性在magento 2中不起作用
- android - 获取孩子的价值观
- python - 嵌套序列化现在不创建一个 forignkey 它需要一个新的对象而不是 'id'
- python - 如何在迭代时成功弹出/删除字典项