Re: [問題] 請問如何印出 字串加上整數?

看板Python作者 (謬客)時間6年前 (2018/07/05 14:17), 編輯推噓3(306)
留言9則, 4人參與, 6年前最新討論串2/2 (看更多)
※ 引述《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://www.ptt.cc/bbs/Python/M.1530771438.A.3F9.html

07/05 20:18, 6年前 , 1F
請問這個語法和 .format 有甚麼差別嗎?
07/05 20:18, 1F

07/05 21:59, 6年前 , 2F
能做到的效果是一樣的 不過閱讀起來會比較順
07/05 21:59, 2F

07/05 22:52, 6年前 , 3F
其實就是大家很長用的 '{var}'.format(**locals())
07/05 22:52, 3F

07/05 22:55, 6年前 , 4F
至於 format 功能根本就沒變阿
07/05 22:55, 4F

07/05 22:56, 6年前 , 5F
python2: "{text:10}{num:10}".format(**locals())
07/05 22:56, 5F

07/05 22:56, 6年前 , 6F
得到結果不會不一樣...
07/05 22:56, 6F

07/06 00:32, 6年前 , 7F
效果是一樣的 這就只是語法糖
07/06 00:32, 7F

07/06 03:07, 6年前 , 8F
感謝樓上兩位細心解答
07/06 03:07, 8F

07/06 08:49, 6年前 , 9F
fstring似乎比format還快一些些
07/06 08:49, 9F
文章代碼(AID): #1RFRVkFv (Python)
文章代碼(AID): #1RFRVkFv (Python)