[問題] 輸入多個零

作者: s4028600 (佑)   2019-11-14 19:36:49
x=int(input())
a="abcd%d" % (x)
print(a)
如果我輸入002
打印出來卻是
abcd2
想要打印出
abcd002
要怎麽做
作者: rexyeah (ccccccc)   2019-11-14 19:40:00
google zfill
作者: junwh (What the hell)   2019-11-14 19:46:00
a = "abcd%03d" % (x)
作者: s4028600 (佑)   2019-11-14 19:57:00
zfill不管放哪裡都沒效果感謝2樓有效了 但是不懂原理...如果4位數是%04d嗎
作者: s860134 (s860134)   2019-11-14 20:01:00
問題是出在你指定了 format 的格式為 %d換 %s 就沒問題了 什麼都不用改查詢 python string format 的文件
作者: s4028600 (佑)   2019-11-14 20:04:00
%s結果也一樣喔
作者: s860134 (s860134)   2019-11-14 20:07:00
媽阿 你一開始就用int轉了當然啊拔掉那個int, %d 換成%sinput 吃進來天生就是 string 只有你動手腳才會把 string轉成 int 自然沒有前置 0
作者: s4028600 (佑)   2019-11-14 20:14:00
喔 我是直接拿別人的來用 原理沒理解透徹 感謝解說 python string format 的文件在哪裡阿
作者: s860134 (s860134)   2019-11-14 20:17:00
Google "python string format "前三個看一看就差不多了也可以看官方文件,很詳細,只是英文版
作者: s4028600 (佑)   2019-11-14 20:21:00
嗯...都是英文不然就是好複雜...慢慢研究...感謝
作者: s860134 (s860134)   2019-11-14 20:23:00
有基礎後買本書看吧 不然總是會卡在一些基礎問題
作者: s4028600 (佑)   2019-11-14 20:24:00
作者: s4028600 (佑)   2019-11-14 20:28:00
有想買 但是畢竟用不到...等更閒的時候吧...
作者: junwh (What the hell)   2019-11-14 20:34:00
%03d就是共三位,用0補滿,但只是用來解你文中想印002的case若想打什麼就印什麼,就像樓上所說的用字串吧
作者: refusekkk (另類3k)   2019-11-15 00:54:00
...
作者: CodingMan (程式俠)   2019-11-15 08:28:00
寫程式最基本就是看英文
作者: qwaszx780917 (白目涼良)   2019-11-15 11:42:00
%s
作者: ciaoPTT (Ciao)   2019-11-15 23:34:00
罰你型別重看一遍
作者: s860134 (s860134)   2019-11-15 23:44:00
他整天東抄抄西抄抄,講好幾次了= =,
作者: s4028600 (佑)   2019-11-16 01:33:00
抱歉...不過很感謝各位的解答

Links booklink

Contact Us: admin [ a t ] ucptt.com