Python基础-数据类型
1、 数据类型处理
查看数据类型:type()
判断数据类型:isinstance('aaa', str),判断'aaa'是否是str类型
类型转换:
代码 | 说明 |
---|---|
str(a) | 将a变量转换成字符串类型 |
int(a) | 将a变量转换成整形 |
float(a) | 将a变量转换成浮点型 |
格式化字符串:
x,y = 1, "bc"
print("%d is a name, %s is a string" % (x,y))
'''字符串阿格式化是通过%来实现的。其中%d(十进制整数)打印数字,%s(字符串)只能打印字符串,%f格式化浮点数如果无法确定种类则用%r'''
2、 string常见方法/函数
代码 | 说明 |
---|---|
len(str1) | 返回字符串的长度 |
str1.count("bc", 0, len(str1)) | 统计字符串"bc"在字符串str1中出现的次数(要用print打印结果) |
str1.startswith("abc", 0, len(str1)) | 判断字符串是否以"abc"开头,是则返回True,否则返回False。(要用print打印结果) |
end = str1.endswith("bccb", 0, len(str1)) | 检查start或者end指定范围内,字符串str1是否以"bccb"结束,如果是,返回True,否则返回False(要用print打印结果) |
str1.upper() | 讲字符串str1全部替换为大写(要用print打印结果) |
str2.lower() | 讲字符串str2全部替换为小写(要用print打印结果) |
str1.isdigit() | 判断str1是否为整数,是返回True,否则返回False(要用print打印结果) |
str1.find("bccb", 0, len(str1)) | 如果指定范围包含字符串"bccb",返回第一次出现的索引值,否则返回-1(要用print打印结果) |
str1.index("bc",0,len(str1)) | 和find()一样,只不过如果"bc"不存在,会报一个异常(要用print打印结果) |
str1.rfind("aaa", 0, len(str1)) | 和find()一样,只不过从右边开始查找(要用print打印结果) |
str1.rindex("bc", 0, len(str1)) | 和index()一样,只不过从右边开始查找(要用print打印结果) |
str1.lstrip() | 默认删除字符串左边的空格(要用print打印结果) |
str1.rstrip() | 默认删除字符串右边的空格(要用print打印结果) |
str1.strip() | 默认删除字符串左、右边的空格(要用print打印结果) |
str1.strip("abc") | 删除字符串左、右边的"abc"(要用print打印结果) |
str1.replace("bc","11111",2) | 将字符串中的"bc"替换成"11111",不超过2次,(要用print打印结果) |
";".join(str1) | 以";"作为分隔符,将str1字符串中所有元素合并为一个新的字符串(要用print打印结果) |
str1.split("bc",2) | 以"bc"作为分隔符截取字符串,截取2次(要用print打印结果) |
str1.splitlines(keepends=False) | 按照行('\r','\r\n','\n')分隔(不包括'\n\r'),返回一个包含各行作为元素的列表,如果参数keepends为False,不包含换行符,如果为True,则包含换行符 |
3、 list
切片:
列表从左到右索引从0开始,从右到左索引从-1开始。示例:A = ['aaa', 423523, 'bbd', [1, 2]]
代码 | 说明 |
---|---|
A[0:2] | 取索引为0,1的元素 ['aaa', 423523] |
A[-3:-1] | 取索引为倒数第3个和倒数第2个元素 [423523, 'bbd'] |
A[:2] | 取索引为0,1的元素 ['aaa', 423523] |
A[-3:] | 取索引为倒数第3个到倒数第1个元素 [423523, 'bbd', [1, 2]] |
A[1:-1] | 取索引为2的元素到倒数第2个元素 [423523, 'bbd'] |
A[2:-3] | 空列表 [] |
list常见方法/函数
代码 | 说明 |
---|---|
len(A) | 列表元素个数 |
max(A)/min(A) | 返回列表元素最大值/最小值 |
list(A) | 将元组转换为列表 |
A.append('aaa') | 在列表A末尾添加新的对象 |
A.count('aaa') | 统计元'aaa'在列表A中出现的次数 |
A.extend([1, 'aaa',1]) | 在列表A末尾一次性追加序列[1, 'aaa',1] |
A.index('aaa') | 从列表中找出第一个'aaa'的索引位置 |
A.insert(2,345) | 将对象345插入列表A中索引为2的位置 |
A.pop(3) | 删除列表A中索引为3的元素,并返回该元素的值 |
A.remove(1) | 删除列表A中元素1的第一个匹配项 |
A.reverse() | 反向列表中的元素 |
A.sort() | 对列表A进行排序 |
A.sort(reverse=True) | 降序排列 |
A.sort(reverse=False) | 升序排列 |
A.copy () | 复制列表A |
A.clear() | 清空列表 |
4、 tuple
元组和list的区别:
元组使用小括号,列表使用方括号。
元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用。
元组中的元素值是不允许修改的,但我们可以对元组进行连接组合:tup3 = tup1 + tup2
元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组。
元组内置函数:
代码 | 说明 |
---|---|
len(tuple) | 计算元组元素个数 |
max/min(tuple) | 返回元组中元素最大/小值。 |
tuple(list) | 将列表转换为元组 |
list(tuple) | 将元组转换为列表 |
5、 dict
字典是一种可变容器模型,且可存储任意类型对象。字典的每个键值(key>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号{}中。
键必须是唯一的,但值不必,值可以去任意数据类型,键必须是不可变数据类型,如字符串、数字或元组。
dict常用操作:
示例:a = {"uid": 105, "login": "beazley", "name": "tony"}
代码 | 说明 |
---|---|
u = a["uid"] | 取字典a中键为"uid"对应的值 |
a["name"] = "lily" | 修改键值 |
a["new"] = "新值" | 增加新的键值 |
len(a) | 键值对个数 |
dict常用方法:
代码 | 说明 |
---|---|
"uid" in a | 判断"uid"是否是字典里的key,是返回True,不是返回False |
a.items() | 以列表返回可遍历的(键,值)元组 |
a.keys() | 以列表返回所有的键 |
a.values() | 以列表返回所有的值 |
a.update({"age":24,"sex":"女"}) | 把字典{"age":24,"sex":"女"}的键值对添加到字典a中 |
a.get("age",20) | 返回键"age"对应的值,如果不存在,返回20 |
a.setdefault("score", 100) | 如果键不存在于字典中,添加键并将值设为100 |
a.pop("nn") | 如果键"nn"不存在,default未传值,则报错 |
a.pop("nn",123) | 如果键"nn"不存在,default传值,则返回default值123 |
a.pop("age") | 如果键"age"存在,default未传值,则删除键值对"age":24,返回"age"对应的值24 |
a.pop("age",25) | 如果键"age"存在,default传值, 则删除键值对"age":24,返回"age"对应的值24 |
a.copy() | 浅拷贝字典a |
a.clear() | 删除字典a内所有元素 |