python3傳參型別記錄

2021-08-30 15:38:37 字數 916 閱讀 3799

向函式中傳入dict:

def

modify

(d):

d['a']=11

defdelete

(d):

d.pop(

'b')

definsert

(d):

d['c']=3

d1 =

modify(d1)

delete(d1)

insert(d1)

print

(d1)

#

可以看出, 在函式內對dict進行操作之後, 函式外也能看到; 所以, 傳入的是引用, 在函式內進行操作之後, 指向的記憶體也產生了變化

但是, 如果對傳入的引用再次賦值, 則函式外不變:

def

re_assign

(d):

d =d1 =

re_assign(d1)

print

(d1)

#

由此可以看出, 傳入的是引用的copy.

list的情況完全相同

def

modify

(l):

l[0]

=11defdelete

(l):

l.pop(1)

definsert

(l):

l[-1

]=3l1 =[1

,2]modify(l1)

print

(l1)

# [11, 2]

delete(l1)

print

(l1)

# [11]

insert(l1)

print

(l1)

# [3]

Python3 爬蟲Post傳參

前言 python3 post 傳參主要用到的是urllib.request.urlopen url,data 引數當中data。data引數主要是設定post的傳參。天象獨行 首先,在計畫使用post傳參爬蟲的時,我們需要確定幾點 1 需要訪問的url。2 請求物件 使用urllib.reques...

Python3 錯誤型別記錄

1.syntaxerror return out side function 語法錯誤 return 不能在方法以外使用 解決辦法 將 return 放在方法體中使用 2.typeerror must be str not int 型別錯誤 必須是str 而不是int 解決辦法 使用 拼接的時候,必...

python3 函式傳參 先後順序

當args與位置引數和預設引數混用的情況下 示例一 三者順序是 位置引數 預設引數 args def foo x,y 1,args pass foo 1,2,3,4,5 其中的x為1,y 1的值被2替換,3,4 5都給args,即args 3 4,5 示例二 三者順序是 位置引數 args 預設引數...