数据类型
可变数据类型:改变数据的值并不会产生一个新的对象,变量仍然指向原来的对象,叫可变数据类型。 不可变数据类型:指凡是改变了数据的值之后,这个值就将变成另外一个对象的数据类型,叫不可变数据类型。
- Number数字(不可变)
- List列表
- String字符串(不可变)
- Set集合
- Tuple元组(不可变)
- Dictionary字典
Number数字
数值运算符
print(15/2) — 7.5
print(15//2) — 7 #2个/代表整除
print(15%2) —1 %代表取余
print(2**3) # 2的3次方
math模块中常用的方法
ceil: 取大于等于x的最小的整数值,如果x是一个整数,则返回x 。4.5→5 fabs: 返回x的绝对值。 -2→2 floor: 取小于等于x的最大的整数值,如果x是一个整数,则返回自身。4.5→4 pow: 返回x的y次方,即x**y。 sqrt: 求x的平方根
Random模块产生随机数
import random random.random(): 返回 [0.0, 1.0) 之间的浮点数,注意,这是一个左闭右开的区间,随机数可能会是 0 但不可能为 1 random.randint(a, b): 生成一个 a与b 之间的随机整数,也就是[a, b] random.randrange(a, b): 生成的随机整数不会包含 b ,也即[a, b) random.uniform(a, b): 生成[a b] 之间的随机浮点数 random.choice([]): 从列表中随机取出一个元素 random.shuffle[1]([]): 打乱列表中元素的顺序 random.sample[2]([],n): 从序列中随机取出 n 个元素
String字符串
引号
1.在Python中,凡是由单引号' ',双引号""和三引号''' '''括起来的值或变量都是属于字符串类型 2.字符串中的单引号、双引号或三引号不可混用 3.三引号一般用于代码注释或保持样式的长字符串输出
切片[//]: # (python区别于其他语言独有的非常灵活的字符串切片)
[:] 提取从开头(默认位置0)到结尾(默认位置-1) 的整个字符串,取全部 [start:] 从start 提取到结尾 [:end] 从开头提取到end - 1 [start:end] 从start 提取到end -1 [start:end:step] 从start 提取到end - 1,每step 个字符提取一个,例如[::-1]全部反正取
step为正表示正序切片,为负表示逆序切片,默认为正1。 正序切片时,要求start必须从学符串开头处进行计数,逆序切片时start必须从字符串尾部计数。 无论正序还是逆序,start均要求在end之前,否则无法得到内容。
常见操作-自动转义
在python中如果遇到字符串中需要大量使用转义字符时,可以使用python提供的原始字符串功能,即在要转义的字符串前面加r。即可实现自动转义。这个功能用在像windows路径的转义时特别适用。
s = r"C:\Program Files\Java\jre1.8.0_241\bin" print(s)
常用函数/方法
len(string)返回字符串长度 count(str,beg= 0,end=len(string)) 返回 str 在 string 里面出现的次数,如果 beg或者 end 指定则返回指定范围内 str 出现的次数 capitalize() 将字符串的第一个字符转换为大写 find(str, beg=0 end=len(string)) 检测 str 是否包含在字符串中 中,如果 beg 和end 指定范围,则检查是否包含在指定范围内,如果是返回开始的索引值,否则返回-1 replace(old,new) 把 将字符串中的 str1 替换成 str2split(str=””) 以 str 为分隔符拆分字符串,返回的字符串拆分后的列表 index(str, beg=0,end=len(string)) 跟find0方法一样,只不过如果str不在字符串中会报一个异常 ','.join(['a','b','c']) 以指定符号连接后面列表中的字符串元素,以字符串形式返回 isdigit() 如果字符串只包含数字则返回 True 否则返回 Falseisalpha() 判断字符串中是否只包含字母 islower()如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True,否则返回 False isspace() 如果字符串中只包含空格,则返回 True,否则返回 False istitle() 如果字符串是标题化的(见 title0)则返回 True,否则返回 False lower() 转换字符串中所有大写字符为小写. startswith(str, beg=0,end=len(string)) 检查字符串是否是以 指定的str 开头,是则返回True,否则返回 False。如果beg 和 end 指定值,则在指定范围内检查。 strip(str): 删除字符串两边的str代表的字符,如果不指定str则删除空白字符 rstrip(str)和Istrip(str): 删除字符串右边或左边str代表的字符,如果不指定str则删除空白字符
List列表
列表常用方法
list.append(obj) 在列表未尾添加新的对象 list.count(obj) 统计某个元素在列表中出现的次数 list.extend(seq)在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表) list.index(obi) 从列表中找出某个值第一个匹配项的索引位置,索引从0开始 list.insert(index,obj) 将对象插入列表 list.pop(index) 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值 list.remove(obi) 移除列表中某个值的第一个匹配项 list.reverse() 反向列表中元素,倒转 list.sort() 对原列表进行排序 (无返回值) max(list) 求列表最大值 min(list) 求列表最小值 sum(list) 对列表求和 len(list) 求列表中元素个数 list(str) 将字符串强制转换为列表 list(range(start,end=None)) 快速生成指定范围内的数字列表
Tuple元组
元组常用方法
len(tuple) 计算元组元素个数。 max(tuple)返回元组中元素最大值。 min(tuple) 返回元组中元素最小值. tuple(seg) 将列表转换为元组
Set集合
Python的set和其他语言类似,是一个无序不重复元素集,主要用于消除重复元素
集合常见操作
1.添加一个元素s.add(12) 2.删除一个元素s.remove('aa') 3.删除整个集合,连变量一起删除del (s) 4.清空集合s.clear() 5.长度计算len(s) 思考:集合是否支持切片? 不支持。
Dictionary字典
字典数据类型
字典(dictionary)是除列表之外python中最灵活的内置数据结构类型列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过索引存取。 字典的每个键值(key=>value)对用冒号0分割,每个对之间用逗号()分割,整个字典包括在花括号(0)中,格式如下所示: d = {keyl : valuel, key2 : value2}
字典常用方法
dict.clear() 删除字典内所有元素 dict.copy() 返回一个字典的深复制 dict.fromkeys([]) 创建一个以序列seq中的元素作为键的新字典 dict.get(key, default=None) 返回指定键的值,如果值不在字典中返回default值 dict.update(dict2) 把字典dict2的键/值对更新到dict里 dict.keys() 以列表返回一个字典所有的键 dict.values() 以列表返回字典中的所有值 dict.items() 返回字典中的键值对列表 dict.popitem() 随机删除字典里面的任意一项 dict.pop(key)删除指定的键值对