亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python末尾逗號導致返回結(jié)果是一個元組的問題

 更新時間:2023年09月14日 10:19:57   作者:西京刀客  
在Python中,除非特別需要返回或傳參元組,一般不推薦在語句末尾添加逗號,應該注意檢查是否存在末尾逗號導致的這些副作用,這篇文章主要介紹了python末尾逗號導致返回結(jié)果是一個元組,需要的朋友可以參考下

python末尾逗號導致返回結(jié)果是一個元組

問題描述

調(diào)用的地方

port = config_manager.get_int('mongo','port'),
print(type(port)) # 應該打印int,但是打印成了元組

使用 configparser 解析配置文件,函數(shù)定義,configparser也提供了一些輔助方法,可以在讀取時直接轉(zhuǎn)換,比如:

getint() - 獲取整數(shù)值

def get_int(self, section, key):
    """獲取整數(shù)類型的配置值"""
    value = self.config.getint(section, key)
    print(type(value))
    assert isinstance(value, int) 
    return value

問題:調(diào)用的地方應該打印int,但是打印成了元組

問題分析

經(jīng)過網(wǎng)上查詢資料,很多說是 int數(shù)據(jù)再int轉(zhuǎn)換一次就變成了元組,但是這塊明顯不符合我的情況。

最后發(fā)現(xiàn)是:末尾逗號導致port變量綁定到一個元組上~

末尾逗號是一個非常容易被忽視的細節(jié),這次經(jīng)歷也是一個寶貴的學習經(jīng)歷。以后在Python中獲取返回值時,一定要注意是否有這種錯誤。

Python中末尾逗號基礎

在Python中,如果語句或函數(shù)的參數(shù)列表中添加了末尾的逗號,會產(chǎn)生一些副作用需要注意:

1.返回元組

如果函數(shù)返回多個值,加末尾逗號會使其返回一個元組,而不是多個單獨的值。

def foo():
    return 1, 
print(foo()) # (1,) 

2.參數(shù)組成元組

調(diào)用函數(shù)時參數(shù)末尾加逗號,會將參數(shù)組裝成一個元組。

def foo(x):
    print(x)
foo(1,) # (1,)

3.元組拆包不正確

帶末尾逗號的元組拆包時,需要處理額外的逗號產(chǎn)生的值。

values = (1,) 
a, = values # 會報錯
a, _ = values # 正確拆包方式

4.函數(shù)定義參數(shù)

錯誤在函數(shù)定義中參數(shù)帶逗號容易造成參數(shù)數(shù)目錯誤。

def foo(x, ): # 會被識別成接收元組的函數(shù)
    pass

5.多余語法錯誤

末尾逗號也可能直接導致語法錯誤。

print(1,) print(2) # 錯誤

總結(jié):在Python中,除非特別需要返回或傳參元組,一般不推薦在語句末尾添加逗號。應該注意檢查是否存在末尾逗號導致的這些副作用。

到此這篇關于python末尾逗號導致返回結(jié)果是一個元組的文章就介紹到這了,更多相關python末尾逗號內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Python迭代器協(xié)議及for循環(huán)工作機制詳解

    Python迭代器協(xié)議及for循環(huán)工作機制詳解

    這篇文章主要介紹了Python迭代器協(xié)議及for循環(huán)工作機制詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-07-07
  • 簡單的Apache+FastCGI+Django配置指南

    簡單的Apache+FastCGI+Django配置指南

    這篇文章主要介紹了簡單的Apache+FastCGI+Django配置指南,這也是Python上最流行的web框架Django的最流行搭配環(huán)境:)需要的朋友可以參考下
    2015-07-07
  • 如何將Python徹底卸載的三種方法

    如何將Python徹底卸載的三種方法

    通常我們在一些軟件的使用上有碰壁,第一反應就是卸載重裝,所以有小伙伴就問我Python怎么卸載才能徹底卸載干凈,今天這篇文章,小編就來教大家如何徹底卸載Python,需要的朋友可以參考下
    2025-04-04
  • Python opencv實現(xiàn)人眼/人臉識別以及實時打碼處理

    Python opencv實現(xiàn)人眼/人臉識別以及實時打碼處理

    這篇文章主要為大家詳細介紹了Python opencv實現(xiàn)人眼、人臉識別,以及實時打碼處理,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • Django后臺獲取前端post上傳的文件方法

    Django后臺獲取前端post上傳的文件方法

    今天小編就為大家分享一篇Django后臺獲取前端post上傳的文件方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • 使用Python和scikit-learn創(chuàng)建混淆矩陣的示例詳解

    使用Python和scikit-learn創(chuàng)建混淆矩陣的示例詳解

    這篇文章主要介紹了使用Python和scikit-learn創(chuàng)建混淆矩陣的示例詳解,該示例包括生成數(shù)據(jù)集、為數(shù)據(jù)集選擇合適的機器學習模型、構(gòu)建、配置和訓練它,最后解釋結(jié)果,即混淆矩陣,需要的朋友可以參考下
    2022-06-06
  • python使用pytest接口自動化測試的使用

    python使用pytest接口自動化測試的使用

    這篇文章主要介紹了python使用pytest接口自動化測試的使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-04-04
  • python獲取array中指定元素的示例

    python獲取array中指定元素的示例

    今天小編就為大家分享一篇python獲取array中指定元素的示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • Tesserocr庫的正確安裝方式

    Tesserocr庫的正確安裝方式

    今天小編就為大家分享一篇關于Tesserocr庫的正確安裝方式,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-10-10
  • 使用Python寫CUDA程序的方法

    使用Python寫CUDA程序的方法

    下面小編就為大家?guī)硪黄褂肞ython寫CUDA程序的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03

最新評論