Python3-在字符串格式化程序参数中使用变量
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Python3-在字符串格式化程序参数中使用变量,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1060字,纯文字阅读大概需要2分钟。
内容图文
![Python3-在字符串格式化程序参数中使用变量](/upload/InfoBanner/zyjiaocheng/692/c772434c133d491f92fa43a2c6e0f7a0.jpg)
我正在打印一些格式化的列.我想使用以下变量在.format参数中设置长度
number_length = 5
name_length = 24
viewers_length = 9
我有
print('{0:<5}{1:<24}{2:<9}'.format(' #','channel','viewers'), end = '')
理想情况下,我想要类似
print('{0:<number_length}{1:<name_length}{2:<viewers_length}'.format(
' #','channel','viewers'), end = '')
但这给了我一个无效的字符串格式化错误.
我试过在变量和括号之前加上%,但没有运气.
解决方法:
你需要:
>名称也要用大括号括起来;和
>将宽度作为关键字参数传递给str.format.
例如:
>>> print("{0:>{number_length}}".format(1, number_length=8))
1
您还可以使用字典解包:
>>> widths = {'number_length': 8}
>>> print("{0:>{number_length}}".format(1, **widths))
1
str.format不会在本地范围中查找适当的名称;必须明确传递它们.
对于您的示例,它可以像这样工作:
>>> widths = {'number_length': 5,
'name_length': 24,
'viewers_length': 9}
>>> template= '{0:<{number_length}}{1:<{name_length}}{2:<{viewers_length}}'
>>> print(template.format('#', 'channel', 'visitors', end='', **widths))
# channel visitors
(请注意,结尾和任何其他显式关键字参数必须在**宽度之前.)
内容总结
以上是互联网集市为您收集整理的Python3-在字符串格式化程序参数中使用变量全部内容,希望文章能够帮你解决Python3-在字符串格式化程序参数中使用变量所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。