Python内置的数据类型

平常测试开发中,以及如果你去面试python自动化测试的相关岗位,首先遇到的就是Python那几大数据类型的考察,笔者结合自己的实践,将相关知识整理一下。供大家学习

序列

1.序列是python中最基本的一种数据结构
2. 序列用于存储一组有序的数据,所有的数据在序列当中都有唯一的位置(索引)
3. 序列的分类:
- 可变序列(序列中元素可以改变)
- 列表(list)
- 不可变序列(序列中元素不可以改变)
- 字符串
- 元组
-

list

Python内置的一种数据类型是列表:list。list是一种有序的集合,可以随时添加和删除其中的元素。实际开发中用的最多的也是list。list 为可变对象,可改变对象的值
1.初始化list

#初始化一个空的列表
classmates=[]
#初始化一个非空列表
students = ['猪八戒', '孙悟空', '沙和尚'] 
#查看数据类型 type(classmates)
print(classmates, type(classmates))

2.通用序列操作,这部分我是查阅的Python 3.7.4 documentation

students = ['猪八戒', '孙悟空', '沙和尚'] 
# x in s 判断元素是否在序列中,返回值为boolean
print('猪八戒' in students) #True
# x not in s 判断元素是否不在序列中,返回值为boolean
print('猪八戒' not in students) #False

#s + t 列表合并
teacher =['唐三藏']
print(students+teacher) # ['猪八戒', '孙悟空', '沙和尚', '唐三藏']

#s[i] 取列表第几个值, 可从前数 也可从后数
print(students[2]) #沙和尚
print(students[-2]) #孙悟空

#s[i:j] 列表截取,从i到j
print(students[1:2]) #['孙悟空']  包含i ,但是不包含j
#s[i:j:k] 步长为K 的截取
print(students[0:2:2]) #['猪八戒']  包含i ,但是不包含j

#len(s) 列表长度
print(len(students))  #3

# s.index(x[, i[, j]]) 查找元素位置从起始位置1开始到3
print(students.index("沙和尚",1,3))   #2

# s.count(x) 统计x在s中的个数
print(students.count("沙和尚"))  #1
  1. 修改列表元素
students = ['猪八戒', '孙悟空', '沙和尚','唐三藏','白骨精']
# 直接通过索引修改
students[1] = 'sunwukong'    
print(students)  # ['猪八戒', 'sunwukong', '沙和尚', '唐三藏', '白骨精']

# 删除元素,通过索引删除
del students[2]

# 通过切片修改列表
students[0:2] = ['牛魔王', '红孩儿']

# 通过切片删除元素
del students[0:1]

不可变序列不能通过索引来修改元素
4. 列表的方法

		# append 向列表中添加元素
		students.append("牛魔王")
		
		# 向列表中指定位置添加元素
		students.insert(2,'红孩儿')
		
		# extend(),使用新序列扩展当前序列
		students.extend(['孙悟空', '沙和尚'])
		
		# pop(i) 删除索引为i元素
		students.pop(2)
		
		# remove(x) 移除指定值的元素
		students.remove('红孩儿')
		
		# reverse()反转列表
		students.reverse()
		
		# sort 排序
		students.sort()
  1. 遍历列表
		for s in students:
    		print(s)

range()

range()是一个函数,可以用来生成一个自然数的序列

	r= range(5) #默认从0开始
	r=range(1,10)
	r=range(0,10,2)
	print(list(r))  # [0, 2, 4, 6, 8]
	
	for s in range(10):
		print(s)

元组(Tuple)

元组是一个不可变序列
它的操作基本上跟列表是一致的,在操作元组的时候将元组当作一个不可变的列表就ok 了

创建元组

	my_tuple = ()
	t=1,4,5,6 # 当元组非空时,括号可以省略

元组的解包
解包是将元组中每个元素的都赋值给一个变量

	my_tuple=1,5,6
	a,b,c=my_tuple

字典(dict)

创建字典:

	d={} #空字典
	d={'name':'xiaoming','age':18}

字典的使用:

#使用dict 创建字典
d=dict(name='xiaoming',age=18)

#len(d) 获取字典中元素的个数
len(d)

# in、not in 判断字典中是否有相应的键

#通过键获取相应的值 d['name'] 或d.get('name')

#修改字典
d['name'] = 'sunwukong'  #如果键不存在,则添加

#d.update(d2)将其他字典中的key-value添加到当前字典中,如果有重复的key,则替换当前的字典的值

#删除
del d['name'] #或者 d.popitem()
d.pop('name') #根据key 删除

#清空字典
d.clear()

字典的遍历

for k in d.keys:
	print(k)

for v in d.values:
	print(v)

for k,v in d.items:
	print(k,'=',v)

集合

  1. 集合只能存储不可变的对象
  2. 集合中存储的元素是无序的
  3. 集合中不能出现重复的元素

创建set

s={1,4,5}

s=set([5,6,9]) 将列表转换为set

#add() 添加元素到集合

# pop(),remove(),clear(),update() 这些方法 跟上面说的是一样的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值