一、pytho变量
python是动态类型的语言,即无需声明变量类型,直接对变量赋值即可
1、可以在一行语句中,操作多个变量
name, sex = "明明", "女" print("名子是:{},性别是:{}".format(name, sex))输出:名子是:明明,性别是:女
2、交换两个变量可以这样写
name, sex = "明明", "女" name,sex = sex,name print("名子是:{},性别是:{}".format(name, sex))输出:名子是:女,性别是:明明
二、变量解包
1、变量解包:是python里的一种特殊的赋值操作,允许把一个迭代对像,一次性赋值给多个变量
datas = ["明明", "女"] name, sex = datas print("名子是:{},性别是:{}".format(name, sex))输出: 名子是:明明,性别是:女
2、也可以嵌套
datas =["001", ["明明", "女"]] id,info = datas id,(name,sex) = datas print("id={}".format(id)) print("info={}".format(info)) print("name={}".format(name)) print("sex={}".format(sex))输出:
id=001
info=['明明', '女']
name=明明
sex=女
3、动态解包:
语法是:*variadbles,它便会贪婪(意思是捕获一批对像,捕获一个和多个都合法,但它总是选择结果更多的那种,即多个)的捕获多个对像,并将值赋给variablies
datas = ["001","数学","语文","英语","自然","科学","女"] id,*curses,sex = datas print("id={}".format(id)) print("curses={}".format(curses)) print("sex={}".format(sex))输出:
id=001
curses=['数学', '语文', '英语', '自然', '科学']
sex=女
4、变量解包的循环用法
datas = [["张三", 80], ["李四", 40]] for name, score in datas: print("name={},score={}".format(name, score))输出:
name=张三,score=80
name=李四,score=40
5、如果你想在解析包的时候,忽略一些变量
可以用“_”,常做为一个无意义的占位符
datas = ["001","数学","语文","英语","自然","科学","女"] id,*_,sex = datas print("id={}".format(id)) print("sex={}".format(sex)) 输出: id=001 sex=女