Python 語法
│
├── 基本結構
│ ├── 語句(Statements)
│ │ ├── 表達式語句(如賦值、算術運算)
│ │ ├── 控制流語句(if , for , while )
│ │ ├── 定義語句(def , class )
│ │ └── 導入語句(import , from . . . import )
│ ├── 代碼塊(由縮進定義)
│ └── 注釋(單行
│
├── 數據類型
│ ├── 基本類型
│ │ ├── 數字(int , float , complex )
│ │ ├── 字符串(str )
│ │ ├── 布爾值(bool )
│ │ └── 空值(NoneType)
│ ├── 復合類型
│ │ ├── 列表(list )
│ │ ├── 元組(tuple )
│ │ ├── 字典(dict )
│ │ └── 集合(set )
│ └── 類型轉換(如 int ( ) , str ( ) , list ( ) )
│
├── 運算符
│ ├── 算術運算符(+ , - , * , / , // , % , ** )
│ ├── 比較運算符(== , != , < , > , <= , >= )
│ ├── 邏輯運算符(and , or , not )
│ ├── 位運算符(& , | , ^ , ~ , << , >> )
│ └── 賦值運算符(= , += , -= , 等)
│
├── 控制流
│ ├── 條件語句(if - elif - else )
│ ├── 循環語句(for , while )
│ ├── 跳轉語句(break , continue , pass )
│ └── 異常處理(try - except - finally - else )
│
├── 函數
│ ├── 定義(def )
│ ├── 參數(位置參數、默認參數、可變參數)
│ ├── 返回值(return )
│ ├── 作用域(局部變量、全局變量)
│ └── 匿名函數(lambda )
│
├── 類與對象
│ ├── 類定義(class )
│ ├── 繼承(單繼承、多繼承)
│ ├── 方法(實例方法、類方法、靜態方法)
│ ├── 特殊方法(如 __init__, __str__)
│ └── 屬性(@property )
│
├── 模塊與包
│ ├── 模塊(. py 文件)
│ ├── 導入(import 模塊名, from 模塊名 import 成員)
│ ├── 包(包含 __init__. py 的目錄)
│ └── 標準庫與第三方庫
│
└── 其他特性├── 迭代器與生成器(iter , next , yield )├── 裝飾器(@decorator)├── 上下文管理器(with 語句)└── 元編程(如 type , exec , eval )
一、基礎語法規則
1. 縮進與代碼塊
Python使用縮進(4個空格 )代替大括號 {}
表示代碼塊。 錯誤示例 :
if True :
print ( "錯誤!" )
if True : print ( "縮進正確!" )
2. 注釋
單行注釋 :以 #
開頭。多行注釋 :用三引號 """
或 '''
包裹。
"""
這是多行注釋
可以寫多行內容
"""
3. 語句分隔
一行寫多條語句時用分號 ;
分隔(不推薦,多條語句最好是分行寫):
a = 5 ; b = 10 ; print ( a + b)
4. 變量命名
規則:字母/數字/下劃線組成,不能以數字開頭。 區分大小寫:name
和 Name
是不同變量。 命名慣例: 小寫+下劃線(如 user_name
)。 類名用大駝峰(如 ClassName
)。
二、數據類型與操作
1. 基本數據類型
類型 示例 說明 int
5
, -3
整數 float
3.14
, -2.5
浮點數 str
"Hello"
, 'Python'
字符串 bool
True
, False
布爾值 NoneType
None
空值
2. 復合數據類型
nums = [ 1 , 2 , 3 ]
nums[ 0 ] = 10
point = ( 10 , 20 )
user = { "name" : "Alice" , "age" : 25 }
print ( user[ "name" ] )
unique_nums = { 1 , 2 , 2 , 3 }
3. 類型轉換
a = int ( "10" )
b = float ( 5 )
c = str ( 3.14 )
d = list ( "abc" )
三、運算符
1. 算術運算符
print ( 5 + 3 )
print ( 5 ** 2 )
print ( 10 % 3 )
2. 比較運算符
print ( 3 > 2 )
print ( 5 == 5.0 )
print ( 5 is 5.0 )
3. 邏輯運算符
print ( True and False )
print ( not True )
4. 成員運算符
nums = [ 1 , 2 , 3 ]
print ( 2 in nums)
print ( 4 not in nums)
四、流程控制
1. 條件語句
age = 18
if age < 13 : print ( "兒童" )
elif age < 18 : print ( "青少年" )
else : print ( "成年人" )
2. 循環語句
for i in range ( 3 ) : print ( i)
fruits = [ "apple" , "banana" ]
for fruit in fruits: print ( fruit)
count = 0
while count < 3 : print ( count) count += 1
3. 循環控制
for i in range ( 5 ) : if i == 3 : break print ( i)
for i in range ( 5 ) : if i == 2 : continue print ( i)
五、函數
1. 定義與調用
def greet ( name) : """返回問候語(文檔字符串)""" return f"Hello, { name} !" print ( greet( "Alice" ) )
2. 參數傳遞
def power ( base, exp= 2 ) : return base ** expprint ( power( 3 ) )
print ( power( 3 , 3 ) )
def sum_all ( * args) : return sum ( args) print ( sum_all( 1 , 2 , 3 ) )
3. Lambda函數
square = lambda x: x ** 2
print ( square( 5 ) )
六、面向對象編程(OOP)
1. 類與對象
class Dog : species = "Canis familiaris" def __init__ ( self, name, age) : self. name = name self. age = agedef bark ( self) : print ( f" { self. name} 汪汪叫!" )
my_dog = Dog( "Buddy" , 3 )
my_dog. bark( )
2. 繼承
class GoldenRetriever ( Dog) : def __init__ ( self, name, age, color) : super ( ) . __init__( name, age) self. color = colordef bark ( self) : print ( "溫柔的汪汪!" ) golden = GoldenRetriever( "Max" , 2 , "金色" )
golden. bark( )
七、異常處理
try : num = int ( input ( "輸入數字:" ) ) result = 10 / num
except ValueError: print ( "輸入的不是數字!" )
except ZeroDivisionError: print ( "不能除以0!" )
else : print ( f"結果是 { result} " )
finally : print ( "程序執行完畢" )
八、文件操作
with open ( "test.txt" , "w" ) as f: f. write( "Hello, Python!" )
with open ( "test.txt" , "r" ) as f: content = f. read( ) print ( content)
九、模塊與包
1. 導入模塊
import math
print ( math. sqrt( 16 ) ) from datetime import datetime
print ( datetime. now( ) )
2. 自定義模塊
def say_hello ( ) : print ( "Hello from mymodule!" )
import mymodule
mymodule. say_hello( )
十、Pythonic技巧
1. 列表推導式
squares = [ x** 2 for x in range ( 5 ) ]
2. 字典推導式
square_dict = { x: x** 2 for x in range ( 3 ) }
3. 上下文管理器
with open ( "file.txt" , "r" ) as f: data = f. read( )
常見錯誤與規范
縮進錯誤 :代碼塊必須嚴格對齊。變量未定義 :使用前需先賦值。修改不可變對象 :如字符串、元組不可修改。PEP8規范 :