VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 编程开发 > python爬虫 >
  • 基本的数据类型和内置方法02

元组  tuple

用途:存储多个类型的值(不能存可变类型)

定义方式:通过小括号存储数据,数据之间通过逗号分隔(值不能被改变)

定义容器类型的时候如果里面只有一个值,在值的后面加上一个逗号,在元组中,不加就是字符串

元组的类型总结:有序,不可变,存多个值

复制代码
t1 = ('a','b','c','a')  # t1 = tuple(('a','b','c'))
print(t1)
print(type(t1))

打印结果:
('a', 'b', 'c', 'a')
<class 'tuple'>
复制代码

常用方法

1、索引取值

t1 = ('a','b','c','a')
print(t1[0])

打印结果:
a

2、索引切片

t1 = ('a','b','c','a')
print(t1[0:2])

打印结果:
('a', 'b')

3、成员运算

复制代码
t1 = ('a','b','c','a')
print('a' in t1 )
print('a'not in t1 )

打印结果:
True
False
复制代码

4、len:获取当前元组中的元素个数

t1 = ('a','b','c','a')
print(len(t1))

打印结果:
4

5、count:统计当前元组中的某个元素的个数

t1 = ('a','b','c','a')
print(t1.count('a'))

打印结果:
2

6、index:获取当前元组的索引值,还可以指定查找范围

t1 = ('a','b','c','a')
print(t1.index('b'))

打印结果:
1

字典 dict

用途:字典的名称指出了这种数据结构的用途。普通图书适合按从头到尾的顺序阅读,如果你愿意,可快速翻到任何一页,这有点像Python中的列表。字典(日常生活中的字典和Python字典)旨在让你能够轻松地找到特定的单词(键),以获悉其定义(值)

定义方式:通过大括号来存储数据,通过key:value来定义键值对数据,每个键值对中间通过逗号分隔

key:一定是不可变类型        value:可以是任何类型

复制代码
# 1、
d1 = {'name':'egon','age':'84'}
print(d1)
# 2、
d2 = dict({'name':'egon','age':'84'})
print(d2)
# 3、
l1 = ['name','age']
l2 = ['egon','84']
z1 = zip(l1,l2)
print(dict(z1))

打印结果:
{'name': 'egon', 'age': '84'}
{'name': 'egon', 'age': '84'}
{'name': 'egon', 'age': '84'}
复制代码

常用方法

1、按照key:value映射关系取值(可存可取可改)

复制代码
d1 = {'name':'egon','age':'84'}
print(d1['name'])
print(d1['age'])
d1['name'] = 'tank'
d1['gender'] = 'male'
print(d1)

打印结果:
egon
84
{'name': 'tank', 'age': '84', 'gender': 'male'}
复制代码

 2、成员运算in,not in

d1 = {'name':'egon','age':'84'}
print('egon' in d1)

打印结果:
False

3、len:获取字典里键值对的个数

d1 = {'name':'egon','age':'84'}
print(len(d1))

打印结果:
2

4、get:获取指定key的值,如果不存在,默认返回None

复制代码
d1 = {'name':'egon','age':'84'}
print(d1.get('gender'))
# 可以通过第二个参数修改默认返回的内容
print(d1.get('gender','no'))

打印结果:
None
no
复制代码

5、keys、value、items:结合for循环使用

复制代码
d1 = {'name':'egon','age':'84'}
print(d1.keys())    # 返回所有的key
print(d1.values())  # 返回所有的value
print(d1.items())   # 返回所有的键值对,返回时列表元素
for keys in d1.keys():
    print(keys)
for value in d1.values():
    print(value)
for items in d1.items():
    print(items)

打印结果:
dict_keys(['name', 'age'])
dict_values(['egon', '84'])
dict_items([('name', 'egon'), ('age', '84')])
name
age
egon
84
('name', 'egon')
('age', '84')
复制代码

6、pop:指定key进行删除,有返回值

d1 = {'name':'egon','age':'84'}
d1.pop('name')
print(d1)

打印结果:
{'age': '84'}

7、popitem:随机删除一组键值对,返删除键值对返回的是元组

d1 = {'name':'egon','age':'84'}
d1.popitem()
print(d1)

打印结果:
{'name': 'egon'}

8、update:用薪字典替换旧字典

复制代码
d1 = {'name':'egon','age':'84'}
d2 = {'1':'a'}
d1.update(d2)
print(d1)
d1.update({'name':'tank'})
print(d1)

打印结果:
{'name': 'egon', 'age': '84', '1': 'a'}
{'name': 'tank', 'age': '84', '1': 'a'}
复制代码

9、fromkeys:生成一个新字典,第一个参数他会以第一个参数的各个元素为key,以后第二个参数为值,组成一个新字典

d1 = {'name':'egon','age':'84'}
print(dict.fromkeys([1,2,3],['ke','k1']))

打印结果:
{1: ['ke', 'k1'], 2: ['ke', 'k1'], 3: ['ke', 'k1']}

10、setdefault:key不存在返回新增键值对的value,存在就返回存在的值

复制代码
d1 = {'name':'egon'}
print(d1.setdefault('name',1))
print(d1)

打印结果:
egon
{'name': 'egon'}
复制代码

集合

用途:去重,关系运算

定义方式:通过大括号存储数据,每个元素通过逗号分隔

定义空集合必须使用set()来定义

类型总结:无序(没有索引),可变,存多个值

可以增加删除,但不可以更改

常用方法:

合集:|
交集:&
差集:-
对称差集:^

复制代码
# 集合中不可能出现两个相同的元素
python_student = {'egon', 'jason', 'tank', 'owen', 'egon'}
linux_student = {'frank', 'alex', 'egon'}
go_student = {'egon'}

print(python_student)
print(python_student | linux_student)
print(python_student & linux_student)
print(python_student - linux_student)
print(linux_student - python_student)
print(python_student ^ linux_student)
print(python_student > go_student)      #判断父集
print(python_student < linux_student)    #判断子集


打印结果:
{'jason', 'egon', 'tank', 'owen'}
{'tank', 'alex', 'owen', 'jason', 'egon', 'frank'}
{'egon'}
{'jason', 'tank', 'owen'}
{'frank', 'alex'}
{'alex', 'frank', 'tank', 'owen', 'jason'}
True
False
复制代码

类型总结:


相关教程