封装与解构
在IPython中可以使用 %timeit 计算程序运行时间
1、单行: %timeit statement
2、多行:%%timeit
例如:
def asfd(n): # 定义一个函数
for i in range(n):
return(i)
单行:%timeit(20)
多行:%%timeit m=20
asfd(m)
封装与解构:
封装:
# 等号右边多个值使用逗号分割组合返回一个元组
例如: t = 1,2,3 print(t) 为(1,2,3)
解构:
# 把线性结构(非线性结构也可以,例如set和dict)的元素解开,并顺序的赋给其它变量
# 左边接纳的变量数要和右边解开的元素个数一致
# 可以使用*变量名尽可能多的接收,并组成一个列表;但不能单独使用
例如:运行 head,*mid,tail = (1,2,3,4,5,6)
输出 head = 1
mid = [2,3,4,5]
tail = 6
丢弃变量 _ :
# 这是一个惯例,是一个不成文的约定,不是标准
# 如果不关心一个变量,就可以定义该变量的名字为_
# _是一个合法的标识符,也可以作为一个有效的变量使用,但是定义成下划线就是希望不要被使用,除非你明确的知道这个数据需要使用(需要使用的数据一般不会用_作为变量标识符)
# _ 这个变量本身无任何语义,没有任何可读性,所以不是用来给人使用的
# Python中很多库,都使用这个变量,使用十分广泛。请不要在不明确变量作用域的情况下,使用 _ 导 致和库中_冲突
例题:
1 # 从lst = [1,(2,3,4),5]中,提取4出来 2 lst = [1,(2,3,4),5] 3 _,(*_,a),_ = lst 4 print(a)
1 # 环境变量JAVA_HOME=/usr/bin,返回环境变量名和路径 2 lst = 'JAVA_HOME=/usr/bin' 3 a,_,b = lst.partition('=') 4 print(a,b)