鱼C论坛

 找回密码
 立即注册
查看: 1816|回复: 5

求助帖

[复制链接]
发表于 2016-12-6 20:57:17 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
list1=[5,10,14,105,201]我怎么能让list1显示成[005,010,014,105,201]
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2016-12-6 20:57:55 | 显示全部楼层
在线等,高手不吝赐教吧
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-12-6 21:21:31 | 显示全部楼层
论坛新手,大家在顺便答一下,怎么悬赏鱼币,不知道怎么搞,诚心想解决问题
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-12-6 22:05:21 | 显示全部楼层
list1=[5,10,14,105,201]我怎么能让list1显示成[005,010,014,105,201]


你的意思应该是显示3位吧.
但是小于3位的整数不能记为00几.所以要转成字符串
转成字符串就用len()函数判断列表中的元素的位数.如何是2位就加一个0.如何是1位就加2个0.
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-12-7 08:53:13 | 显示全部楼层
如果作为程序内部的表示方式是不可行的,因为整数前面不能有0,除非转成字符串。
如果作为print输出是可以的。
  1. list1=[5,10,14,105,201]
  2. print('[', end ='')
  3. for i in range(len(list1)):
  4.     if i < len(list1) - 1:
  5.         print('%03d'%list1[i], ', ', end = '')
  6.     else:
  7.         print('%03d'%list1[i], end = '')
  8. print(']')
复制代码

  1. [005 , 010 , 014 , 105 , 201]
复制代码

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-12-7 09:33:55 | 显示全部楼层
本帖最后由 SixPy 于 2016-12-7 09:36 编辑

在Python里,以0开头的数值是用来区分不同进制

所以,只能转换为字符串
  1. >>> ls = [5,10,14,105,201]
  2. >>> print('[%s]'%', '.join(('%03d'%i for i in ls)))
  3. [005, 010, 014, 105, 201]
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-10-16 03:17

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表