列表值转换求教
我有原列表: ['百分比', 0.18783077252910993, 0.22321698021427624, 0.18793982332573]我想转来新列表: ['百分比', '18.78%, '22.32%', '18.79%']
这个需要怎么来。、~!? 列表推导式 xiaosi4081 发表于 2020-6-20 15:23
列表推导式
{:5_99:}不会。、能来示例吗 本帖最后由 Twilight6 于 2020-6-20 15:29 编辑
这样即可:
temp = ['百分比', 0.18783077252910993, 0.22321698021427624, 0.18793982332573]
new_list = []
for i in temp:
if isinstance(i,float):
new_list.append('{:.2f}%'.format(i*100))
else:
new_list.append(i)
print(new_list) maxliu06 发表于 2020-6-20 15:24
不会。、能来示例吗
a = ['百分比', 0.18783077252910993, 0.22321698021427624, 0.18793982332573]
b = []
b.append(a)
for i in a:
if i != '百分比':
b.append("%.2f"%i+"%")
print(b)
temp = ['百分比', 0.18783077252910993, 0.22321698021427624, 0.18793982332573]
for i in range(len(temp)):
if type(temp) != str:
tmp = temp * 100
tmp = "%.2f" % tmp + "%"
temp = tmp Twilight6 发表于 2020-6-20 15:26
这样即可:
转了之后,用openpyxl 写在excel 表上。它出来的结果还是 小数点形式的。 不是百分比字符串的~!! maxliu06 发表于 2020-6-20 15:38
转了之后,用openpyxl 写在excel 表上。它出来的结果还是 小数点形式的。 不是百分比字符串的~!!
{:10_258:} maxliu06 发表于 2020-6-20 15:38
转了之后,用openpyxl 写在excel 表上。它出来的结果还是 小数点形式的。 不是百分比字符串的~!!
右键excle的那个单元格,设置单元格格式,然后选择百分比就好了 小甲鱼的铁粉 发表于 2020-6-20 15:43
右键excle的那个单元格,设置单元格格式,然后选择百分比就好了
我是想直接出结果 , 写在表格上面的
maxliu06 发表于 2020-6-20 15:45
我是想直接出结果 , 写在表格上面的
对你想变的那列 使用 .apply(lambda x: format(x, '.2%'))
这样试试看,前面的格式化也可能就不用了,直接这样 Twilight6 发表于 2020-6-20 15:39
{:5_109:}又可以了。。不知道是不是环境的问题了、。、谢谢 maxliu06 发表于 2020-6-20 15:45
我是想直接出结果 , 写在表格上面的
额,那我还不会{:10_297:}
页:
[1]