需要比较数字,看起来像:12,3K,1,84M等例如:
a = 12,3K
b = 1,84M
if b > a :
print b
你需要使用替换:
a = ("12,3K", "1,84M")
numbers = {"K": 1000, "M": 1000000}
result = []
for value in a:
if value:
i = value[-1]
value = float(value[:-1].replace(',', '.')) * numbers[i]
result.append(int(value))
print max(result)
您可以在字典中添加更多数字,您将获得更多结果。
我会推荐一个函数来将a
和b
转换为相应的数字,如下所示(我也会制作a
并b
字符串:
def convert(num):
return num.replace(',','').replace('K','000').replace('M','000000')
a = '12,3K'
b = '1,84M'
if convert(b) > convert(a) :
print b
如果你的值是字符串,那么re
模块可以很容易地用 ''
替换逗号,用 3 或 6 个零替换 K 或 M。然后用int()
包裹并进行比较。您在哪里/如何获得要比较的值?