1. 程式人生 > >Python之旅10:深淺拷貝與三元運算

Python之旅10:深淺拷貝與三元運算

一、深淺拷貝

1、賦值

建立一個變數,該變數指向原來記憶體地址

n1 = {"k1": "nick", "k2": 123, "k3": ["jenny", 666]}
n2 = n1

2、淺拷貝

在記憶體中只額外建立第一層資料

n1 = {"k1": "nick", "k2": 123, "k3": ["jenny", 666]}
n2 = copy.copy(n1)

3、深拷貝

在記憶體中將所有的資料重新建立一份(排除最後一層,即:python內部對字串和數字的優化)

import copy
   
n1 = {"k1": "nick", "k2": 123, "k3": ["jenny", 666]}
n2 = copy.deepcopy(n1)

二、三元運算

三元運算(三目運算),是對簡單的條件語句的縮寫。

result = 值1 if 條件 else 值2
  
# 如果條件成立,那麼將 “值1” 賦值給result變數,否則,將“值2”賦值給result變數
1
2
3
########## 三 元 運 算 ############
name = "nick" if 1==1 else "jenny"
print(name)