欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Python max內置函數詳細介紹

系統 1773 0

Python max內置函數

max(iterable, *[, key, default])

max(arg1, arg2, *args[, key])

Return the largest item in an iterable or the largest of two or more arguments.

If one positional argument is provided, it should be an iterable. The largest item in the iterable is returned. If two or more positional arguments are provided, the largest of the positional arguments is returned.

There are two optional keyword-only arguments. The key argument specifies a one-argument ordering function like that used for list.sort(). The default argument specifies an object to return if the provided iterable is empty. If the iterable is empty and default is not provided, a ValueError is raised.

If multiple items are maximal, the function returns the first one encountered. This is consistent with other sort-stability preserving tools such as sorted(iterable, key=keyfunc, reverse=True)[0] and heapq.nlargest(1, iterable, key=keyfunc).

? 說明:

  1. 函數功能為取傳入的多個參數中的最大值,或者傳入的可迭代對象元素中的最大值。默認數值型參數,取值大者;字符型參數,取字母表排序靠后者。還可以傳入命名參數key,其為一個函數,用來指定取最大值的方法。default命名參數用來指定最大值不存在時返回的默認值。

  2. 函數至少傳入兩個參數,但是有只傳入一個參數的例外,此時參數必須為可迭代對象,返回的是可迭代對象中的最大元素。

            
>>> max(1) # 傳入1個參數報錯
Traceback (most recent call last):
 File "
            
              ", line 1, in 
              
                
  max(1)
TypeError: 'int' object is not iterable
>>> max(1,2) # 傳入2個參數 取2個中較大者
2
>>> max(1,2,3) # 傳入3個參數 取3個中較大者
3
>>> max('1234') # 傳入1個可迭代對象,取其最大元素值
'4'

              
            
          

  3. 當傳入參數為數據類型不一致時,傳入的所有參數將進行隱式數據類型轉換后再比較,如果不能進行隱式數據類型轉換,則會報錯。

            
>>> max(1,1.1,1.3E1) # 整數與浮點數可取最大值
13.0
>>> max(1,2,3,'3') # 數值與字符串不能取最大值
Traceback (most recent call last):
 File "
            
              ", line 1, in 
              
                
  max(1,2,3,'3')
TypeError: unorderable types: str() > int()

>>> max([1,2],[1,3]) # 列表與列表可取最大值
[1, 3]
>>> max([1,2],(1,3)) # 列表與元組不能取最大值
Traceback (most recent call last):
 File "
                
                  ", line 1, in 
                  
                    
  max([1,2],(1,3))
TypeError: unorderable types: tuple() > list()


                  
                
              
            
          

  4. 當存在多個相同的最大值時,返回的是最先出現的那個最大值。

            
#定義a、b、c 3個列表
>>> a = [1,2]
>>> b = [1,1]
>>> c = [1,2]

#查看a、b、c 的id
>>> id(a)
68128320
>>> id(b)
68128680
>>> id(c)
68128240

#取最大值
>>> d = max(a,b,c)
>>> id(d)
68128320

#驗證是否最大值是否是a
>>> id(a) == id(d)
True


          

  5. 默認數值型參數,取值大者;字符型參數,取字母表排序靠后者;序列型參數,則依次按索引位置的值進行比較取最大者。還可以通過傳入命名參數key,指定取最大值方法。

            
>>> max(1,2) # 取數值大者
2
>>> max('a','b') # 取排序靠后者
'b'
>>> max('ab','ac','ad') # 依次按索引比較取較大者
'ad'

>>> max(-1,0) # 數值默認去數值較大者
0
>>> max(-1,0,key = abs) # 傳入了求絕對值函數,則參數都會進行求絕對值后再取較大者
-1


          

  6. key參數的另外一個作用是,不同類型對象本來不能比較取最大值的,傳入適當的key函數,變得可以比較能取最大值了。

            
>>> max(1,2,'3') #數值和字符串不能取最大值
Traceback (most recent call last):
 File "
            
              ", line 1, in 
              
                
  max(1,2,'3')
TypeError: unorderable types: str() > int() 
>>> max(1,2,'3',key = int) # 指定key為轉換函數后,可以取最大值
'3'

>>> max((1,2),[1,1]) #元組和列表不能取最大值
Traceback (most recent call last):
 File "
                
                  ", line 1, in 
                  
                    
  max((1,2),[1,1])
TypeError: unorderable types: list() > tuple()
>>> max((1,2),[1,1],key = lambda x : x[1]) #指定key為返回序列索引1位置的元素后,可以取最大值
(1, 2)
復制代碼
  
                  
                
              
            
          

7. 當只傳入的一個可迭代對象時,而且可迭代對象為空,則必須指定命名參數default,用來指定最大值不存在時,函數返回的默認值。

            
>>> max(()) #空可迭代對象不能取最大值
Traceback (most recent call last):
 File "
            
              ", line 1, in 
              
                
  max(())
ValueError: max() arg is an empty sequence
>>> max((),default=0) #空可迭代對象,指定default參數為默認值
0
>>> max((),0) #默認值必須使用命名參數進行傳參,否則將被認為是一個比較的元素
Traceback (most recent call last):
 File "
                
                  ", line 1, in 
                  
                    
  max((),0)
TypeError: unorderable types: int() > tuple()

                  
                
              
            
          

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 日韩在线观看一区二区不卡视频 | 极品嫩模私拍后被潜在线观看 | 草草影院浮力 | 亚州激情 | 亚洲区激情区图片小说区 | 四虎影视最新网站在线播放 | 国产精品久久久久久久一区探花 | 国产va免费精品观看精品 | 欧美一级免费 | 国产精品免费播放 | 久久久久成人精品亚洲国产 | 久青草免费在线视频 | 日韩不卡免费视频 | 中国人xxxxx18| 亚洲国产成人av好男人在线观看 | 香蕉av777xxx色综合一区 | 欧洲色吧| 国产精品视频一区二区三区 | 国产中文字幕在线播放 | 成人免费在线视频网站 | 亚洲精品一二三区-久久 | 成人免费观看在线网址 | 国产最新一区 | 亚洲韩精品欧美一区二区三区 | 图片区乱熟图片区小说 | 五月久久亚洲七七综合中文网 | 毛片一级片 | 97网站| 国产性色视频在线高清 | 久久av一区 | 亚洲精品午夜在线观看 | 欧美日韩久久久 | 欧美成人免费看片一区 | 九九视频九九热 | 精品欧美一区二区三区四区 | 理论片91| 欧美人成片免费看视频不卡 | 国产三级网站在线观看 | 久草国产精品 | 日韩精品视频在线播放 | 亚洲国产片高清在线观看 |