中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

初學Python常見異常錯誤,總有一處你會遇到!

發布時間:2020-07-20 22:43:15 來源:網絡 閱讀:615 作者:Python熱愛者 欄目:編程語言

初學Python常見錯誤

  1. 忘記寫冒號
  2. 誤用=
  3. 錯誤 縮緊
  4. 變量沒有定義
  5. 中英文輸入法導致的錯誤
  6. 不同數據類型的拼接
  7. 索引位置問題
  8. 使用字典中不存在的鍵
  9. 忘了括號
  10. 漏傳參數
  11. 缺失依賴庫
  12. 使用了python中對關鍵詞
  13. 編碼問題

1. 忘記寫冒號

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

age = 42

if age == 42

    print('Hello!')
  File "<ipython-input-19-4303141d6f97>", line 2

    if age == 42

                ^

SyntaxError: invalid syntax

2. 誤用 =

'''
遇到問題沒人解答?小編創建了一個Python學習交流QQ群:××× 尋找有志同道合的小伙伴,
互幫互助,群里還有不錯的視頻學習教程和PDF電子書!
'''
=` 是賦值操作,而判斷兩個值是否相等是 `==
gender = '男'

if gender = '男':

    print('Man')
  File "<ipython-input-20-191d01f95984>", line 2

    if gender = '男':

              ^

SyntaxError: invalid syntax

3. 錯誤的縮進

Python用縮進區分代碼塊,常見的錯誤用法:

print('Hello!')

 print('Howdy!')
  File "<ipython-input-9-784bdb6e1df5>", line 2

    print('Howdy!')

    ^

IndentationError: unexpected indent
num = 25

if num == 25:

print('Hello!')
  File "<ipython-input-21-8e4debcdf119>", line 3

    print('Hello!')

        ^

IndentationError: expected an indented block

4. 變量沒有定義

'''
遇到問題沒人解答?小編創建了一個Python學習交流QQ群:××× 尋找有志同道合的小伙伴,
互幫互助,群里還有不錯的視頻學習教程和PDF電子書!
'''
if city in ['New York', 'Bei Jing', 'Tokyo']:

    print('This is a mega city')
---------------------------------------------------------------------------

NameError                                 Traceback (most recent call last)

<ipython-input-22-a81fd2e7a0fd> in <module>

----> 1 if city in ['New York', 'Bei Jing', 'Tokyo']:

      2     print('This is a mega city')
NameError: name 'city' is not defined

5. 中英文輸入法導致的錯誤

  • 英文冒號
  • 英文括號
  • 英文逗號
  • 英文單雙引號
if 5>3:

    print('5比3大')
  File "<ipython-input-46-47f8b985b82d>", line 1

    if 5>3:

          ^

SyntaxError: invalid character in identifier
if 5>3:

    print('5比3大')
  File "<ipython-input-47-4b1df4694a8d>", line 2

    print('5比3大')

                ^

SyntaxError: invalid character in identifier
spam = [1, 2,3]
  File "<ipython-input-45-47a5de07f212>", line 1

    spam = [1, 2,3]

                 ^

SyntaxError: invalid character in identifier
if 5>3:

    print('5比3大‘)
  File "<ipython-input-48-ae599f12badb>", line 2

    print('5比3大‘)

                 ^

SyntaxError: EOL while scanning string literal

6. 不同數據類型的拼接

字符串/列表/元組 支持拼接

字典/集合不支持拼接

'''
遇到問題沒人解答?小編創建了一個Python學習交流QQ群:××× 尋找有志同道合的小伙伴,
互幫互助,群里還有不錯的視頻學習教程和PDF電子書!
'''
'I have ' + 12 + ' eggs.'

#'I have {} eggs.'.format(12)
---------------------------------------------------------------------------

TypeError                                 Traceback (most recent call last)

<ipython-input-29-20c7c89a2ec6> in <module>

----> 1 'I have ' + 12 + ' eggs.'
TypeError: can only concatenate str (not "int") to str
['a', 'b', 'c']+'def'
---------------------------------------------------------------------------

TypeError                                 Traceback (most recent call last)

<ipython-input-31-0e8919333d6b> in <module>

----> 1 ['a', 'b', 'c']+'def'
TypeError: can only concatenate list (not "str") to list
('a', 'b', 'c')+['a', 'b', 'c']
---------------------------------------------------------------------------

TypeError                                 Traceback (most recent call last)

<ipython-input-33-90742621216d> in <module>

----> 1 ('a', 'b', 'c')+['a', 'b', 'c']
TypeError: can only concatenate tuple (not "list") to tuple
set(['a', 'b', 'c'])+set(['d', 'e'])
---------------------------------------------------------------------------

TypeError                                 Traceback (most recent call last)

<ipython-input-35-ddf5fb1e6c8c> in <module>

----> 1 set(['a', 'b', 'c'])+set(['d', 'e'])
TypeError: unsupported operand type(s) for +: 'set' and 'set'
grades1 = {'Mary':99, 'Henry':77}

grades2 = {'David':88, 'Unique':89}

grades1+grades2
---------------------------------------------------------------------------

TypeError                                 Traceback (most recent call last)

<ipython-input-36-1b1456844331> in <module>

      2 grades2 = {'David':88, 'Unique':89}

      3 

----> 4 grades1+grades2
TypeError: unsupported operand type(s) for +: 'dict' and 'dict'

7. 索引位置問題

spam = ['cat', 'dog', 'mouse']

print(spam[5])
---------------------------------------------------------------------------

IndexError                                Traceback (most recent call last)

<ipython-input-38-e0a79346266d> in <module>

      1 spam = ['cat', 'dog', 'mouse']

----> 2 print(spam[5])
IndexError: list index out of range

8. 使用字典中不存在的鍵

在字典對象中訪問 key 可以使用 []

但是如果該 key 不存在,就會導致:KeyError: 'zebra'

'''
遇到問題沒人解答?小編創建了一個Python學習交流QQ群:××× 尋找有志同道合的小伙伴,
互幫互助,群里還有不錯的視頻學習教程和PDF電子書!
'''
spam = {'cat': 'Zophie',

        'dog': 'Basil',

        'mouse': 'Whiskers'}

print(spam['zebra'])
---------------------------------------------------------------------------

KeyError                                  Traceback (most recent call last)

<ipython-input-39-92c9b44ff034> in <module>

      3         'mouse': 'Whiskers'}

      4 

----> 5 print(spam['zebra'])
KeyError: 'zebra'

為了避免這種情況,可以使用 get 方法

spam = {'cat': 'Zophie',

        'dog': 'Basil',

        'mouse': 'Whiskers'}

print(spam.get('zebra'))
None

key 不存在時,get 默認返回 None

9. 忘了括號

當函數中傳入的是函數或者方法時,容易漏寫括號

'''
遇到問題沒人解答?小編創建了一個Python學習交流QQ群:××× 尋找有志同道合的小伙伴,
互幫互助,群里還有不錯的視頻學習教程和PDF電子書!
'''
spam = {'cat': 'Zophie',

        'dog': 'Basil',

        'mouse': 'Whiskers'}

print(spam.get('zebra')
  File "<ipython-input-43-100a51a7b630>", line 5

    print(spam.get('zebra')

                           ^

SyntaxError: unexpected EOF while parsing

10. 漏傳參數

def diyadd(x, y, z):

    return x+y+z

diyadd(1, 2)
---------------------------------------------------------------------------

TypeError                                 Traceback (most recent call last)

<ipython-input-44-7184f3f906ca> in <module>

      2     return x+y+z

      3 

----> 4 diyadd(1, 2)
TypeError: diyadd() missing 1 required positional argument: 'z'

11. 缺失依賴庫

電腦中沒有相關的庫

12. 使用了python中的關鍵詞

如try、except、def、class、object、None、True、False等

'''
遇到問題沒人解答?小編創建了一個Python學習交流QQ群:××× 尋找有志同道合的小伙伴,
互幫互助,群里還有不錯的視頻學習教程和PDF電子書!
'''
try = 5

print(try)
  File "<ipython-input-1-508e87fe2ff3>", line 1

    try = 5

        ^

SyntaxError: invalid syntax
def = 6

print(6)
  File "<ipython-input-2-d04205303265>", line 1

    def = 6

        ^

SyntaxError: invalid syntax

13. 文件編碼問題

import pandas as pd

df = pd.read_csv('data/twitter情感分析數據集.csv')

df.head()

嘗試encoding編碼參數傳入utf-8、gbk

df = pd.read_csv('data/twitter情感分析數據集.csv', encoding='utf-8')

df.head()

都報錯說明編碼不是utf-8和gbk,而是不常見都編碼,這里我們需要傳入正確都encoding,才能讓程序運行。

python有個chardet庫,專門用來偵測編碼。

import chardet

binary_data = open('data/twitter情感分析數據集.csv', 'rb').read()

chardet.detect(binary_data)
{'encoding': 'Windows-1252', 'confidence': 0.7291192008535122, 'language': ''
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

嘉祥县| 渑池县| 赤峰市| 瑞安市| 志丹县| 南投市| 桐柏县| 长阳| 尼勒克县| 任丘市| 沙湾县| 句容市| 墨竹工卡县| 绥德县| 宁城县| 潮安县| 沙雅县| 科技| 淳安县| 宁乡县| 紫金县| 眉山市| 海口市| 鹿邑县| 民县| 永安市| 抚顺市| 清水县| 宁陕县| 泰宁县| 衡水市| 唐河县| 靖州| 随州市| 桃园市| 长乐市| 昌吉市| 达拉特旗| 和静县| 庆元县| 惠州市|