Python基础学习三 字典、元组

一、元组

元组,提示别人,这个值是不能被改变的,元组的定义方式是用(),小括号;

元组只有两个方法,那就是count和index

 

mysql1 = ('127.0.0.1',3306,'my','root',123456)

mysql2 = ('127.0.0.1',3307,'my','root','root')

 

print(mysql1.count('my'))#找个数

print(mysql1.index('my'))#返回下标

输出:1 2

print(mysql2.count('root'))#找个数

print(mysql2.index('root'))#返回下标,且为第一个返回值

输出:2 3

#元组也是list,只不过是不可变的

 

 

二、字典

 

特性:

字典是无序的,因为它没有下标,用key来当索引,所以是无序的

字典的key必须是唯一的,因为它是通过key来进行索引的,所以key不能重复,天生就去重

 

1、查看

d = { 'name':'test001',

'age':18,

'sex':'男',

'addr':'昌平区',

'money':10000000 ,

}

print(d['name'])#如果写了不存在的key,会报错

print(d.get('SDFSDF'))#如果get不到的话,返回None

输出: test001

None

 

2、增加

d = { 'name':'test001',

'age':18,

'sex':'男',

'addr':'昌平区',

'money':10000000 ,

}

d['height']=198

d.setdefault('weight',130)#字典是无序的

 

d = {'marry':[18,'北京'],'amy':[20,'山东'],'lily':[25,'河南']}

d['andy']=[22,'河北']#增加

 

print(d.keys())#获取到字典所有的key

print(d.values())#获取到所有的values

 

输出:dict_keys(['marry', 'amy', 'lily', 'andy'])

dict_values([[18, '北京'], [20, '山东'], [25, '河南'], [22, '河北']])

 

 

3、修改

d = { 'name':'test001',

'age':18,

'sex':'男',

'addr':'昌平区',

'money':10000000 ,

'height':198

}

d['shengao']=200 #如果这个key存在的话,修改他的值,如果key不存在的话,新增一个

print(d.keys())#获取到字典所有的key

print(d.values())#获取到所有的values

 

 

4、删除

d = { 'name':'test001',

'age':18,

'sex':'男',

'addr':'昌平区',

'money':10000000 ,

'height':198

}

d.pop('height')#删除某个key

del d['addr']#删除某个key

d.popitem()#随机删除一个(一般删除末尾对)

d.clear()#清空字典

 

print(d.keys())#获取到字典所有的key

print(d.values())#获取到所有的values

 

注意:

# res = list(d.items())

# print(res[0])

 

# for k in d: #性能更好

# print(k,d.get(k))

 

5、嵌套

stus = {

'user1': {

'age': 18,

'sex': '男',

'addr': '昌平区',

'money': 10000000,

'jinku': {

'建行卡': 80000,

'工商卡': 800000,

'招商卡': 8000000

}

},

'user3': {

'age': 19,

'sex': '女',

'addr': '昌平区',

'money': 10000000,

"bag": {

'lv': 20,

'prada':10

}

},

}

 

方法一:

a = stus['user3']['bag'].values()

print(a)

print(sum(a))

 

方法二:

all_money = stus['user1']['jinku'].values()

sum_money = 0

for money in all_money:

sum_money= sum_money+money

print(sum_money)

 

总结:可变变量 :list、字典;不可变变量:元组、字符串

 

posted on 2018-01-10 16:27  louis_w  阅读(144)  评论(0编辑  收藏  举报

导航