我正在使用BeautifulSoup抓取数据,我正在尝试将抓取的数据写入我想要调整良好的列的文件中。
这是我目前的代码产生的内容:
1997 Fisrt Round Sampras, Pete Reneberg, Richey 4-6, 6-4, 6-3, 6-3
1997 Fisrt Round Philippoussis, Mark Frana, Javier 4-6, 6-4, 6-3, 6-3
1997 Fisrt Round Goossens, Kris Black, Byron 4-6, 6-4, 6-3, 6-3
...
我希望输出看起来像这样:
1997 Fisrt Round Sampras, Pete Reneberg, Richey 4-6, 6-4, 6-3, 6-3
1997 Fisrt Round Philippoussis, Mark Frana, Javier 4-6, 6-4, 6-3, 6-3
1997 Fisrt Round Goossens, Kris Black, Byron 4-6, 6-4, 6-3, 6-3
...
这是我的代码:
for tournamentYear_url in tournamentYear_urls:
i = 0
tournamentYear+=1
soup = make_soup(tournamentYear_url)
while i < len(get_player_name_first_round(soup)):
mon_fichier.write(str(tournamentYear) + " ")
mon_fichier.write(str("Fisrt Round "))
mon_fichier.write(get_player_name_first_round(soup)[i] + " ")
mon_fichier.write(get_player_name_first_round(soup)[i+1] + " ")
mon_fichier.write(get_player_score_first_round_winner(soup) + "\n")
i+=2
答案 0 :(得分:3)
看看Python的Format Specification Mini-Language。
有一个特别关于文本对齐和字段宽度/填充的部分:
'&lt;' - 强制字段在可用空间内左对齐(这是大多数对象的默认值)。
'&gt;' - 强制字段在可用空间内右对齐(这是数字的默认值)。
'=' - 强制将填充符放在符号后面(如果有)但在数字前面。这用于以“+000000120”形式打印字段。此对齐选项仅对数字类型有效。
'^' - 强制字段在可用空间内居中。
以及有关如何使用format()的文档中的一些示例:
>>> '{:<30}'.format('left aligned')
'left aligned '
>>> '{:>30}'.format('right aligned')
' right aligned'
>>> '{:^30}'.format('centered')
' centered '
>>> '{:*^30}'.format('centered') # use '*' as a fill char
'***********centered***********'