Python基础之补充1

1.三元运算

三元运算(三目运算),是对简单的条件语句的缩写。

1
2
3
result  =  1  if  条件  else  2
  
# 如果条件成立,那么将 “值1” 赋值给result变量,否则,将“值2”赋值给result变量
1
2
3
########## 三 元 运 算 ############
name  =  "nick"  if  1 = = 1  else  "jenny"
print (name)

 2.其他小知识点

1、for循环
用户按照顺序循环可迭代对象中的内容,
PS:break、continue
1
2
3
li  =  [ 11 , 22 , 33 , 44 ]
for  item  in  li:
     print  item
2、enumrate
为可迭代的对象添加序号
1
2
3
li  =  [ 11 , 22 , 33 ]
for  k,v  in  enumerate (li,  1 ):
     print (k,v)
3、range和xrange
指定范围,生成指定的数字
1
2
3
4
5
6
7
8
print  range ( 1 10 )
# 结果:[1, 2, 3, 4, 5, 6, 7, 8, 9]
 
print  range ( 1 10 2 )
# 结果:[1, 3, 5, 7, 9]
 
print  range ( 30 0 - 2 )
# 结果:[30, 28, 26, 24, 22, 20, 18, 16, 14, 12, 10, 8, 6, 4, 2]  

 3.深浅拷贝

a、数字和字符串

对于 数字 和 字符串 而言,赋值、浅拷贝和深拷贝无意义,因为其永远指向同一个内存地址。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import  copy
#定义变量   数字、字符串
n1  =  123
#n1 = 'nick'
print ( id (n1))
 
#赋值
n2  =  n1
print ( id (n2))
 
#浅拷贝
n3  =  copy.copy(n1)
print ( id (n3))
 
#深拷贝
n4  =  copy.deepcopy(n1)
print ( id (n4))

b、字典、元祖、列表

对于字典、元祖、列表 而言,进行赋值、浅拷贝和深拷贝时,其内存地址的变化是不同的。

1、赋值

创建一个变量,该变量指向原来内存地址

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

2、浅拷贝

在内存中只额外创建第一层数据

1
2
3
4
import  copy
   
n1  =  { "k1" "nick" "k2" 123 "k3" : [ "jenny" 666 ]}
n2  =  copy.copy(n1)

3、深拷贝

在内存中将所有的数据重新创建一份(排除最后一层,即:python内部对字符串和数字的优化)

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

 

基础目录

转载于:https://www.cnblogs.com/honglingjin/p/6120648.html

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值