Python 封装/ 解构/ 丢弃变量


这里的知识虽然简单,不过还是蛮实用的,我简单做了下整理,保证不了那天会忘鸭 ~

  • 封装

    • 将多个值用逗号分割,再组合在一起
    • 本质上,返回一个元组 (tuple),只是省略了小括号

    栗子 :

a = (2,6)           #简单定义个元组  
b = 2,6             #把2,6封装成元组
print(type(a))      #看下a的类型
class 'tuple'       #tuple类型

print(type(b))
class 'tuple'       #tuple类型

  • 解构

    • 把线性结构的元素解开,并顺序的赋给其他变量
    • 左边接纳的变量数和右边解开的元素数一致

    栗子 :

lis = [7, 8, 9]
A, B, C = lis
print(A, B, C)
A = 7 , B = 8 , C = 9

  • 交换

    • 在有些时候我们要实现两个值的的交换,往往需要引入第三个参数,这里可以用封装、解构来实现

    栗子 :

    A = 6   
    B = 9
  • 通常情况下可以用下面这种方式实现,不过看起来略啰嗦 hia ~
temp = A
A = B
B = temp
print(A, B)
A = 9 , B = 6
  • 这样看起来是不是更舒服呢
A, B = B, A         #等号右边使用了封装
print(A, B)         #左边使用了解构实现了值得交换
A = 9 , B = 6

Python 3 中的解构

  • 使用 " * " 变量名接收,但不能单独使用

  • 被 " * " 变量名收集后组成一个列表

    栗子 :

lst = list(range(1,10,2))
head, *mid, tail = lst
print(head)
print(*mid)
print(tail)
#结果依次为
1
3 5 7               # *mid 收集了除head和tail的其他元素
9

丢弃变量

  • 如果不关心一个变量,就可以定义改变变量名字为 " _ "

  • " _ " 是一个合法标识符,可以作为有效变量使用,但是定义成下划线就是不希望被使用,除非你明确知道这个数据需要使用

    栗子 :

lst = [2, 4, 5, 7, 9, 22]
head, *_ , tail = lst
print(head)
2
print(*_)           #既然用"_"表示变量不想被使用
4, 5, 7, 9          #这里就没必要print了,这里为了大家理解
print(tail)
22

总结

"_" 这个变量本身没有任何语义,也没有任何可读性,所以不是用来给人使用的
Python中很多库都使用这个" _ “变量,使广泛。不要在不明确变量作用域情况下使用,免得造成和库中” _ "冲突

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值