作者TuCH (谬客)
看板Python
标题Re: [问题] 请问如何印出 字串加上整数?
时间Thu Jul 5 14:17:16 2018
※ 引述《ironmanstock (钢铁人史塔克)》之铭言:
: 请问一个简单的问题
: debug时每次想要同时印出 数字跟字串
: 就会显示错误 说不能同时印字串跟数字
: 虽然後来改用 str.format的方法"{1} {2} {3}".foramt.......
: 解决了
: 但是觉得这个方法太慢了
: 请问要印出字串跟数字的简单方法是?
: 感谢
python 3.6版有多个 f-string的功能
用法是这样
字串里面前面用多一个f
""里面可以加{}塞变数
var1 = something1
var2 = something2
var3 = something3
text = f"There are something like {var1} {var2} {var3}"
下面几个范例
num1 = 9527
num2 = 9528
string = "The number is "
print(string + f"{num1} {num2}.")
或着是
print(f"{string}{num1} {num2}.")
或着是
print(f"The number is {9527} {9528}.")
---------------
result: This number is 9527 9528.
如果需要输出漂亮一点则加上冒号数字
例如
something_list = [("something",12345),("text",9527)]
for text, num in something_list:
print(f"{text:10}{num:10}")
--------------
result:
something 12345
text 9527
*注意python3.5以前 以及 python2 皆没有这个功能
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.38.22.112
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1530771438.A.3F9.html
1F:推 aszx4510: 请问这个语法和 .format 有甚麽差别吗? 07/05 20:18
2F:→ TuCH: 能做到的效果是一样的 不过阅读起来会比较顺 07/05 21:59
3F:→ s860134: 其实就是大家很长用的 '{var}'.format(**locals()) 07/05 22:52
4F:→ s860134: 至於 format 功能根本就没变阿 07/05 22:55
5F:→ s860134: python2: "{text:10}{num:10}".format(**locals()) 07/05 22:56
6F:→ s860134: 得到结果不会不一样... 07/05 22:56
7F:→ TuCH: 效果是一样的 这就只是语法糖 07/06 00:32
8F:推 aszx4510: 感谢楼上两位细心解答 07/06 03:07
9F:推 Sunal: fstring似乎比format还快一些些 07/06 08:49