Python:将文本格式化为特定列

2024-04-19 10:31:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我想格式化一些文本到protein data bank file format。基本上我需要做的是在特定的列中开始文本。现在我正在使用ljustrjust进行格式化,但是我觉得应该有一些神奇的函数,我可以用它来给出一个单词,以及它应该从哪个列开始。在

任何帮助都将不胜感激。谢谢

如果我的Statckoverflow搜索失败,请给我指那个方向。在


Tags: 函数文本formatdata方向单词filebank
2条回答

您可以使用字符串“格式”函数进行对齐。http://docs.python.org/library/string.html#formatspec 你可以在MarkSummerfield的“Python3编程:Python语言的完整介绍”的源代码中找到专栏,文件打印_unicode.py在

下面是一个如何使用str.format格式化“坐标记录描述”的示例:

CRD='{r:<6}{a:>9.3f}{b:>9.3f}{c:>9.3f}{alpha:7.2f}{beta:7.2f}{gamma:7.2f} {sp:<11}{z:>4}'

data=dict(r='CRYST1',a=117,b=15.0,c=39,alpha=90,beta=90,gamma=90,sp='P 21 21 21',z=8)
print(CRD.format(**data))

# CRYST1  117.000   15.000   39.000  90.00  90.00  90.00 P 21 21 21    8

格式说明符CRD的解释如下:

{r:<6}告诉format字符串插值{}的值,左对齐,宽度=6。在

{a:>9.3f}告诉format字符串插值a的浮点值,右对齐,总宽度为9,小数点后为3位数。在

指定格式如何工作的完整描述是here。在

相关问题 更多 >