python-3.x - 在python中右对齐循环文本
问题描述
我正在尝试将打印的文本与生成的两个列之间的制表符空间右对齐。
di = {"name": "John", "Job": "Scientist", "Age": "N/A", "OS": "Mac"}
di = di.items()
for (keys, values) in di:
print(keys, "\t", values)
但是我得到下面的打印输出。
name John
Job Scientist
Age N/A
OS Mac
我已经交换了 print 语句,print(f"{keys}{values:>15}")
但它并没有真正帮助,我得到了下面的打印。
name John
Job Scientist
Age N/A
OS Mac
我试图得到这个:
name John
Job Scientist
Age N/A
OS Mac
有什么建议么?
编辑:理想情况下,我希望它在 PyCharm 中打印出来时工作,或者在指示打印命令时输出 sublime 文本。
解决方案
要指定打印输出的对齐方式,请使用我的解决方案中指示的 f 字符串格式化功能,格式化构造 {variable:<} 指示打印左对齐输出字符串。有关更多信息和非常好的教程,请参阅Python 3 的 f-Strings:改进的字符串格式化语法(指南) ,当然还有Formatted String Literals 主题的 python 文档。
di = {"name": "John", "Job": "Scientist", "Age": "N/A", "OS": "Mac"}
for key, value in di.items():
print(f'{key:<}\t{value:<}')
推荐阅读
- docker - 不支持的 docker v1 存储库请求。Openshift 中的错误
- flutter - Flutter Dialogs 不会从上下文继承主题
- linux - 运行循环 N 次的 shell 脚本,其中 N 是用户输入
- java - Java Discord API - 从@mention 获取成员
- javascript - Javascript将窗口上下文传递给函数内部的框架调用
- r - 更改ggplot中时间序列组的线型
- javascript - 有没有更简洁的方法来根据过滤器属性过滤数组?
- actionscript-3 - 在 Mac 上使用 Adobe Air 应用程序打开文件时出现 IO_Error
- postgresql - 带有动态列名的 json_agg()
- vue.js - 为什么我的 v-checkbox 在点击时没有视觉变化?