gpt4 book ai didi

Python ljust 在包含 lin 时无法正确显示

转载 作者:行者123 更新时间:2023-11-28 19:26:02 26 4
gpt4 key购买 nike

我正在使用 Django 创建一个足球队记录站点,我有一个带有 CSS 等的“漂亮”显示,但作为备份/旧学校版本,我试图让代码将信息写入一个基本的 .使用 rjust、ljust 等格式化文本的 html 文件。在下面的代码中,如果我删除链接代码,并且只显示团队名称的字符串,一切都会正确排列。一旦我为链接添加了 HTML,尽管这些列没有对齐并且完全不正常。我做错了什么?

standings = Team.objects.filter(active=True).order_by('-wp')

output += '<pre>\n'
output += '%s %s %s %s\n' % (str('Rk').rjust(3), str('Team').ljust(50), str('W').rjust(2), str('L').rjust(2))
output += '%s %s %s %s\n' % (str('--').rjust(3), str('----').ljust(50), str('-').rjust(2), str('-').rjust(2))

for row in mpi:
the_team = "<a href=\"%s\">%s</a>" % (row.slug, row.name)
output += '%s %s %s %s\n' % (str(row.rank).rjust(3), str(the_team).ljust(50), str(row.won).rjust(2), str(row.lost).rjust(2))
output += '</pre>'

最佳答案

字符串 "<a href=\"%s\">%s</a>"包含一些未在浏览器上呈现的字符,您正在格式化源代码,而不是可视化。

替换str(row.the_team).ljust(50)通过 str(row.the_team).ljust(50+len(row.slug)+15)因为有 15 个不可见字符(即 <a href=""></a> )加上 slug。

更新:您可能想要删除一些 str .如果某些值已经是一个字符串,则您不需要再次(重新)将其转换为字符串。您也可以将长行拆分为较短的行。

output = '<pre>\n'
output += '%s %s%s%s\n' % ('Rk'.rjust(3), 'Team'.ljust(50), 'W'.rjust(2), 'L'.rjust(2))
output += '%s %s%s%s\n' % ('--'.rjust(3), '----'.ljust(50), '-'.rjust(2), '-'.rjust(2))

for team in teams:
link = '<a href="%s">%s</a>' % (team.slug, team.name)
link = link.ljust(50 + len(team.slug) + 15)
rank, won, lost = str(team.rank).rjust(3), str(team.won).rjust(2), str(team.lost).rjust(2)
output += '%s %s%s%s\n' % (rank, link, won, lost)
output += '</pre>'
print output

关于Python ljust 在包含 lin 时无法正确显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12621907/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com