• <th id="bb20k"></th>
    1. <th id="bb20k"></th>
      1. <th id="bb20k"></th>
        <progress id="bb20k"></progress>

        您的位置:新聞資訊 >文章內容
        新手學Python容易犯的錯,你掉過哪些坑
        來源:Python網絡爬蟲與數據挖掘 作者:admin 時間:2018-11-24 17:40:27

        互聯網的高速發展,吸引了許多人進入互聯網工作,自學的也不少,遇到的問題也多,那么在學習Python的過程中掉過哪些坑?新手學Python容易犯的錯有哪些?本文就學習Python,提醒新手們要注意避免的一些事情。

        新手學Python容易犯的錯

        雖然Python的語法比較簡單易學,但一旦不注意細節,剛入門的新手很容易就會掉進語法錯誤的坑里。比如:

        1. 忘記寫冒號

        在 if、elif、else、for、while、class、def 語句后面忘記添加“:”

        if spam == 42
           print('Hello!')

        2. 誤用 “=” 做等值比較

        “=”是給變量賦值,“==”才是判斷兩個值是否相等:

        score = 60
        if score = 60:
           print ('passed')

        改正:

        score = 60
        if score == 60:
           print ('passed')

        3. 變量沒有定義:

        if age >= 18:
           print ('adult')
        print ('END')

        會導致:NameError: name ‘age’ is not defined.

        改正:

        age = 20
        if age >= 18:
           print ('adult')
        print ('END')

        4. 字符串與非字符串連接

        錯誤:

        num = 12
        print('I have ' + num+ ' apples.')

        非字符串和字符串連接的時候,要將非字符串轉換為字符串類型之后才能連接,改正:

        num = 12
        print('I have ' + str(num)+ ' apples.')

        5. 列表的索引位置

        習慣性地認為列表元素的位置是從1開始的:

        spam = ['cat', 'dog', 'mouse']
        print(spam[3])

        列表元素的位置是從0開始的,所以第3個元素“mouse”的索引位置是2,改正:

        spam = ['cat', 'dog', 'mouse']
        print(spam[2])

        6. 使用自增 “++” 自減 “—”

        學過c語言或者Java的人會很習慣使用i++或者i—,但在Python中是沒有自增自減操作符的:

        spam = 0
        spam++

        這時可以使用 “+=” 來代替 “++”,改正:

        spam = 0
        spam += 1

        7. 使用關鍵字命名變量

        Python 3中一共33個關鍵字:

        False,None,True,and,as,assert,break,class,continue,def,del,elif,else,except,finally,for,from,global,if,import,in,is,lambda,nonlocal,not,or,pass,raise,return,try,while,with,yield

        自定義變量時,變量名不能和這些關鍵字重復。

        8. 索引元素位置時忘記調用 len 方法

        通過索引位置來獲取列表元素時,忘記要先使用 len 函數來獲取列表的長度:

        fam = ['dad', 'mom', 'son']

        for i in range(fam):

        print(fam[i])

        改正:

        fam = ['dad', 'mom', 'son']

        for i in range(len(fam)):

        print(fam[i])

        9. 函數中的局部變量賦值前被使用

        num = 42

        def myFunction():
           print(num)
           num = 100

        myFunction()

        第一行定義了一個全局變量num,同時函數myFunction( )也定義了一個同名的局部變量,但程序執行時是先查找局部變量的,所以在函數中找到num之后就不到外部查找了,此時就會出現print的時候變量num還沒賦值的錯誤。

        10. 縮進問題

        和其他語言的語法最大的不同就是,Python不能用括號來表示語句塊,也不能用開始或結束標志符來表示,而是靠縮進來區分代碼塊的。

        常見的錯誤用法:

        (1)

        print('Hello')
           print('World!')

        錯誤是第二行的縮進會導致兩個print語句是包含和被包含的關系,但他們兩者是屬于同一個代碼塊的,所以應該寫成;

        print('Hello')
        print('World!')

        (2)

        if spam == 42:
           print('Hello')
         print('World!')

        錯誤是第三行的縮進,改正的方法有兩種,一是如果兩個print語句是屬于同一代碼塊的,應該改正為

        if spam == 42:
           print('Hello')
           print('World!')

        二是如果第三行的print語句是和if語句是同一級的,則改正為

        if spam == 42:
           print('Hello')

        print('World!')

        (3)在Python 3中,縮進的時候,不能Tab和空格混用,每個縮進層次應該選擇只使用Tab或者只使用空格。

        你在學習Python的過程中掉過哪些坑,歡迎留言參與討論。


        相關文章內容簡介
        代理IP:網絡世界的隱身大法
        精靈代理-隨著互聯網技術的穩步發展和提升,代理IP這一工具類產品成為了許多互聯網人的必備工具。在當今數字化時代,互聯網已經成為了人們日常生活中不可或缺的一部分。人們通過網絡可以獲取各種信息、進行交流、購物、娛樂等各種活動。然而,隨之而來的是網絡安全和隱私問題,如何在網絡上保護自己的隱私成為了人們關注的焦點。代理IP的使用范圍非常廣泛,在商業領域中,代理IP可以用于數據采集、網絡爬蟲等需要頻繁訪問網站的工作中,通過切換代理IP可以規避網站的反爬蟲機制,提高數據采集的效率。在個人用戶中,代理IP可以用于訪問一些被封鎖的網站、規避地區限制等,讓用戶可以更加自由地訪問互聯網。此外,代理IP還可以用于保護用戶的隱私和安全。在一些公共網絡中,用戶的信息很容易被竊取,通過使用代理IP可以加密用戶的數據傳輸,保護用戶的隱私不被泄露。同時,代理IP還可以防止一些網絡攻擊,如DDoS攻擊等,提升用戶在網絡上的安全性。然而,盡管代理IP在網絡隱私保護方面有著諸多優勢,但也存在一些問題。例如,部分免費代理IP可能存在安全隱患,用戶在使用時需要謹慎選擇。同時,代理IP也可...[閱讀全文]
        在線咨詢
        微信公眾號

        微信公眾號

        回到頂部
        国产欧美 一区,国产一本大道香蕉AV,国产亚洲卡通另类图片,国产高清AV在线