abh*_*610 -2 python string combinations list max
希望max从组合列表中找到如下:
['filename1', 1696, 'filename2', 5809,....]
Run Code Online (Sandbox Code Playgroud)
我试过以下:
max(['filename1', 1696, 'filename2', 5809,....])
Run Code Online (Sandbox Code Playgroud)
那回报我TypeError: '>' not supported between instances of 'int' and 'str'.任何建议都会有所帮助.我想要的是max从上面列表中找到整数值.
使用list comprehension与isinstance提取int,然后使用max.
例如:
f = ['filename1', 1696, 'filename2', 5809]
print(max([i for i in f if isinstance(i, int)]))
#or generator
print(max((i for i in f if isinstance(i, int)))) #Better Option
Run Code Online (Sandbox Code Playgroud)
输出:
5809
5809
Run Code Online (Sandbox Code Playgroud)