<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          10個python初學者常犯的錯誤

          共 1231字,需瀏覽 3分鐘

           ·

          2022-07-26 03:20

          下面10個python初學者常犯的錯誤,并不是真正的代碼錯誤,代碼照樣可以運行,但是不夠pythonic,因為python有自己的語言哲學,在代碼的處理上有傳統(tǒng)語言無法比擬的簡潔性和便捷性。

          1.  真值比較

          初學者經(jīng)常在if語句中使用==比較符來判斷表達式是否為真值

          這是一種冗余的寫法,其實你可以直接對變量進行檢查

          2 . 字符串連接

          很多初學者教程中,他們會告訴你字符串連接直接使用+操作符

          一種更優(yōu)雅的寫法是使用f-string方式,將變量放置在{} 中,該方法能讓代碼清晰易讀,因為你不需要針對非字符串變量做強制轉(zhuǎn)換了。

          3. open()、close()與上下文管理器

          操作文件時,下面的代碼看起來可讀性很好,打開文件、編輯文件、關(guān)閉文件。不過在最后你總要是手動去調(diào)用close方法來關(guān)閉文件。

          其實python提供了內(nèi)置的上下文管理器,操作文件時,使用with關(guān)鍵字操作文件,這樣就不需要自己處理文件的關(guān)閉操作了,在離開上下文前管理器會自動幫你關(guān)閉文件。

          4. 檢查列表是否為空

          假設(shè)你要基于列表做某些操作,操作前需要判斷列表是否為空,初學者通常會使用len方法判斷列表的長度是否為0,并做后續(xù)操作。

          有經(jīng)驗的開發(fā)者會告訴你,一種更好的方式是直接用列表本身來判斷列表是否為空

          5. 字典中獲取key和value

          如果你要列出并打印字典中所有元素,首先你要拿到每個元素的key,然后通過key來獲取對應(yīng)的value。初學者通常將兩個步驟分開處理。

          更便捷的方法是,字典的items()方法會返回一個由(key,value)元組構(gòu)成的迭代對象,

          6. 解構(gòu)賦值

          元組在python中是一種固定長度的數(shù)據(jù)結(jié)構(gòu),新手在將元組中的元素賦值給多個不同的變量時,他們通常的做法是從元組中逐個賦值給變量

          更好的做法是直接在一行代碼中用解構(gòu)的方式,將元組同時賦值給多個不同的變量。

          7. 列表迭代

          對于新手來說,用for循環(huán)迭代列表中的元素時,他們通常的做法是先拿到列表的長度,然后通過元素的下標索引來獲取值。

          其實更專業(yè)的做法就是直接迭代列表本身,每次迭代出來的值就是列表中的元素

          8.  一個索引用于多個列表

          假設(shè)你想將兩個列表中的值做加操作,通常,你會從索引0開始循環(huán)直到列表的結(jié)尾,每次循環(huán)將列表項做加操作組成新的列表

          python提供了一個更好的方法zip(),它將兩個列表對象重新組合成一個成對出現(xiàn)的tuple元素列表

          9. 海象操作符

          在python3.8之前,當一個變量作用在if判斷語句上時,要先給他賦值然后再處理

          python3.8的海象操作符,讓你的代碼減少重復,看起來更簡潔,你可以將變量的賦值和if判斷一行處理。

          10. 不必要的索引

          如果有一個文本列表,你想隨下標索引一起打印,可以你單獨定義一個數(shù)字變量每次迭代的時候遞增1

          一個更為專業(yè)的做法是直接用enumerate()方法,每次迭代時,他會返回元素的下標索引和元素本身

          EOF

          瀏覽 55
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  婷婷丁香综合网 | 国产一区二区AV | 影音先锋欧美资源 | 操大黑逼视频 | 精品人伦一区二区三电影 - 百度 麻豆网站-麻豆午夜在线-成人AV |