Return 具有更大参数的对象
Return Object with Greater Parameter
我有两张图片:one
和 two
。我想确定哪个是最大的和最小的,并将它们分别分配给 big
和 small
。什么是最干净的 pythonic 解决方案?
我的解决方法如下:
one = Image.open(url)
two = Image.open(url)
big, small = (one, two) if one.width > two.width else (two, one)
如果您正在寻找更像 Python 的方法,您可以考虑使用 sorted
的强大功能来检查哪个文件更大。这样做的好处是它可以很容易地扩展到图像列表而不是仅仅比较两个项目。
images = [Image.open(url1), Image.open(url2), Image.open(url3)]
sorted_images = sorted(images, key=lambda img: img.width, reverse=True)
big, second_biggest = sorted_images[0:2]
以上示例显示了如何使用 class 实例的 width
属性将图像从大到小排序。 reverse=True
告诉 sorted
按最大-最小顺序对项目进行排序。
最后一行只是从列表中获取最大的两个元素并将它们存储在自己的变量中。
我有两张图片:one
和 two
。我想确定哪个是最大的和最小的,并将它们分别分配给 big
和 small
。什么是最干净的 pythonic 解决方案?
我的解决方法如下:
one = Image.open(url)
two = Image.open(url)
big, small = (one, two) if one.width > two.width else (two, one)
如果您正在寻找更像 Python 的方法,您可以考虑使用 sorted
的强大功能来检查哪个文件更大。这样做的好处是它可以很容易地扩展到图像列表而不是仅仅比较两个项目。
images = [Image.open(url1), Image.open(url2), Image.open(url3)]
sorted_images = sorted(images, key=lambda img: img.width, reverse=True)
big, second_biggest = sorted_images[0:2]
以上示例显示了如何使用 class 实例的 width
属性将图像从大到小排序。 reverse=True
告诉 sorted
按最大-最小顺序对项目进行排序。
最后一行只是从列表中获取最大的两个元素并将它们存储在自己的变量中。