作者cscscs56 (阿信)
看板Python
标题[问题] 请问format输出可以是整数吗?
时间Sat Oct 13 11:40:43 2018
不好意思,小弟最近学python遇到一个问题
"{:0>16d}".format(int(input(9876543210)))
但输出是'0000009876543210',是字串的格式
有试着在里面又加一个int变成int("{:0>16d}".format(int(input())))
但出输前面的六个0就不见了,变成9876543210
後来有用%来完成指令,但不知道能不能用format来达成同样的事情
请问各位大大,有办法用format让输出变成整数0000009876543210吗?
希望有好人指点迷津QQ
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 117.19.68.72
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1539402046.A.42D.html
1F:→ djshen: 整数的0000009876543210不就9876543210 10/13 11:58
2F:→ cscscs56: 因为题目要求要保留前面的0,所以觉得不知所措QQ 10/13 12:01
3F:→ djshen: 不然你题目贴出来 10/13 12:40
4F:推 rexyeah: 只用zfill不行吗? 10/13 12:43
5F:→ cscscs56: 金融卡完整卡号是16码, 但不是每间银行的帐号长度都会 10/13 13:06
6F:→ cscscs56: 达16码,当未达16码时,前面须补上0。 10/13 13:07
7F:→ cscscs56: 试着写一段程式码,如当输入卡号「9876543210」时,会加 10/13 13:07
8F:→ cscscs56: 上6个0,最後输出16位的整数。 10/13 13:07
9F:→ djshen: 所以他是要求你print出来还是怎样 10/13 13:23
10F:→ coeric: 当成字串处理 自己先去判断帐号有几码 不够部份补上0字串 10/13 13:33
11F:推 coeric: if len(ID)<16:ID='{}{}'.format('0'*(16-len(ID)),ID) 10/13 13:38
12F:推 TitanEric: 用zfill解 不会有前面是0补齐的整数呀 10/13 13:58
13F:→ justoncetime: Python format网站我记得有,浅显易懂,try it 10/13 15:03
14F:推 rexyeah: ?? print str(input()).zfill(16) 10/13 16:44
15F:推 handsomeLin: 大家都误会意思了 应该是不想有‘’号框着 所以应该 10/14 01:20
16F:→ handsomeLin: 是for loop print吧XD 10/14 01:20
17F:→ cscscs56: handsome大说的没错 XD,也很谢谢大家帮助 10/14 12:21
18F:→ cscscs56: 後来还是用原本的这个print("%016d" % int(input())) XD 10/14 12:22
19F:推 Kazimir: 应该只是题目理解问题啦 不可能要求int前面有0的 10/14 18:05
20F:推 rexyeah: 原来如此XD 10/14 19:18