python學習 基礎語法

2022-07-11 07:51:11 字數 2797 閱讀 2494

目錄包

模組屬性

異常處理

函式物件導向

在 python 用 import 或者 from...import 來匯入相應的模組。

將整個模組匯入可以使用import,import後面的名字必須是包名,在使用函式時也必須帶上包名

from os import path as p

import os.path

如果引用的是同專案中的模組,也可以使用相對路徑

import sound.effects.echo

import sound.effects.surround

from sound.effects import *

目錄只有包含乙個叫做init.py 的檔案才會被認作是乙個包

每個模組都有乙個__name__屬性,當其值是'main'時,表明該模組自身在執行,否則是被引入。因此這個屬性常用於區分module是自身在執行還是在被引入後執行。

if __name__ == '__main__':

print('程式自身在執行')

else:

print('我來自另一模組')

列印出模組內定義的所有名稱,如果不傳入引數,則列印當前模組下的所有名稱。

try:

print(x)

except nameerror:

print("variable x is not defined")

except:

print("something else went wrong")

else:

print("nothing went wrong")

finally:

print("the 'try except' is finished")

使用raise丟擲異常。如果你只想知道這是否丟擲了乙個異常,並不想去處理它,那麼乙個簡單的 raise 語句就可以再次把它丟擲。

try:

raise nameerror('hithere')

except nameerror:

print('an exception flew by!')

raise

有些物件預定義了清理行為,對於這些物件使用with關鍵字可以就避免定義finally,這樣使**更簡潔

with open("myfile.txt") as f:

for line in f:

print(line, end="")

呼叫函式時,如果沒有傳遞引數,則會使用預設引數

使用關鍵字引數允許函式呼叫時引數的順序與宣告時不一致,因為 python 直譯器能夠用引數名匹配引數值。

def f(a,b,*,c):

return a+b+c

f(1,2,3) # 報錯

#traceback (most recent call last):

# file "", line 1, in #typeerror: f() takes 2 positional arguments but 3 were given

f(1,2,c=3) # 正常

#6

def printinfo( arg1, *vartuple ):

"列印任何傳入的引數"

print ("輸出: ")

print (arg1)

print (vartuple)

printinfo( 70, 60, 50 )

# 70

# (60, 50)

def printinfo( arg1, **vardict ):

print ("輸出: ")

print (arg1)

print (vardict)

printinfo(1, a=2,b=3)

#1#

def f(a, b, /, c, d, *, e, f):

print(a, b, c, d, e, f)

f(10, 20, 30, d=40, e=50, f=60)

f(10, b=20, c=30, d=40, e=50, f=60) # b 不能使用關鍵字引數的形式

f(10, 20, 30, 40, 50, f=60) # e 必須使用關鍵字引數的形式

lambda [arg1 [,arg2,.....argn]]:expression

sum = lambda arg1, arg2: arg1 + arg2

print ("相加後的值為 : ", sum( 10, 20 ))

#!/usr/bin/python3

class parent: # 定義父類

def mymethod(self):

print ('呼叫父類方法')

class child(parent): # 定義子類

def mymethod(self):

print ('呼叫子類方法')

c = child() # 子類例項

c.mymethod() # 子類呼叫重寫方法

super(child,c).mymethod() #用子類物件呼叫父類已被覆蓋的方法

Python基礎學習 語法基礎

一 識別符號與關鍵字 識別符號就是變數 常量 函式 屬性 類 模組和包等由程式設計師指定的名字。構成識別符號的字元均有一定的規範,python語言中識別符號的命名規則如下 區分大小寫,myname 與 myname 是兩個不同的識別符號 首字元可以是下劃線 或字母,但不能是數字 除首字元外其他字元,...

Python基礎學習 二 基礎語法

預設情況下,python 3 原始碼檔案以utf 8編碼,所有字串都是 unicode 字串。當然你也可以為原始碼檔案指定不同的編碼 conding utf 8 在python 3中,非 ascii 識別符號也是允許的了。保留字即關鍵字,我們不能把它們用作任何識別符號名稱。python 的標準庫提供...

Python學習筆記 語法基礎

注釋 n 換行符 續行符 連線同一行中的兩個語句 分隔 塊的頭和體 塊 縮排方式體現 一般賦值 增量賦值 不支援x x等自增 自減運算 多重賦值 x y z 1 多元賦值 x,y,z 1,2,3 交換 x,y y,x 關鍵字 專用下劃線識別符號 不用from module import 匯入 系統定...