Python基础数据类型

1.int

# int 用于计算
num = 3
# int 与其他数据类型转换
int_to_str = str(num)  # 数字加引号
print(int_to_str)
int_to_bool = bool(num)  # 非0 为True 否则为False
print(int_to_bool)

2.bool

# bool True False 用于判断真假
b = True
# bool于其他类型之间转换
bool_to_int = int(b)  # True 1 False 0
print(bool_to_int) 
bool_to_str = str(b)  # True False 加引号
print(bool_to_str)

3.str

3.1字符串索引和切片

"""字符串索引
下标从0开始,最后一位为-1
"""
name = "zhangsan"
print(name[0])  # 取第一个
print(name[-1])  # 取最后一个
"""字符串切片
获取字符串中的一段字符
原则:顾头不顾尾
"""
name = "zhangsan"
print(name[0:5])  # zhang
print(name[:5])  # zhang 为0时可省略
print(name[5:])  # san取到最后
"""步长"""
print(name[:5:2])  # zag
print(name[:-4:-1]) # nas

 

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

3.2字符串常用方法

"""1.首字母大写"""
name = "zhangsan is my Name"
print(name.capitalize())  # Zhangsan is my name   后面的大写也会改为小写
"""2.特殊字符分隔,首字母大写"""
print(name.title())  # Zhangsan Is My Name
name = "dsa68fud dnsa%asdo*mmfd"
print(name.title())  # Dsa68Fud Dnsa%Asdo*Mmfd  特殊字符+数字+空格等
"""3.全部大写/小写"""
name = "zhangsan is my Name"
print(name.upper())
print(name.lower())
"""4.判断字符串开头或者结尾"""
name = "zhangsan"
print(name.startswith('z'))
print(name.startswith("zhan"))
print(name.endswith("n"))
print(name.endswith("san"))
"""5.字符或者切片出现次数"""
name = "zhangsan"
print(name.count('a'))
print(name.count("an"))  # 如果没有返回0
"""6.字符串分割"""
name = "zhangsan is my Name"
print(name.split())  # 默认分割符为空格,返回一个列表
print(name.split('a'))  # 指定分割符分割
"""7.首尾空格去除"""
name = "  zhangsan is my Name  "
print(name.strip())  # 首尾空格
print(name.lstrip())  # 左边空格
print(name.rstrip())  # 右边空格
name = "**zhangsan is my Name**"
print(name.strip("*"))  # 首尾*
"""8.format三种形式"""
info = "my name is {},my age is {},my hobby is{},my name is {}!".format('zhangsan', 20, 'study', 'zhangan')
print(info)
info = "my name is {0},my age is {1},my hobby is{2},my name is {0}!".format('zhangsan', 20, 'study')
print(info)
info = "my name is {name},my age is {age},my hobby is{hobby},my name is {name}!".format(name='zhangsan', hobby='study',
                                                                                        age=20)
print(info)
"""9.替换"""
name = "zhangsan"
print(name.replace('a', 'b'))  # zhbngsbn
print(name.replace('a', 'b', 1))  # zhbngsan
"""10.is相关"""
name='abcd123'
print(name.isalnum())  #字符串由字母或数字组成
print(name.isalpha())  #字符串只由字母组成
print(name.isdigit())  #字符串只由数字组成

 

4.list

4.1列表索引和切片

"""列表的索引"""
li = [1, 2, 'a', 'b']
print(li[0])
print(li[-1])
# 类似于字符串
"""列表的切片"""
li = [1, 2, 'a', 'b']
print(li[0:2])
# 类似于字符串,得到的是新列表

 

4.2列表的增

#  append 在列表最后添加
li = [1, 2, 'a', 'b']
li.append('c')  # [1, 2, 'a', 'b', 'c']
print(li)
# insert 指定索引位置添加
li = [1, 2, 'a', 'b']
li.insert(1, 'insert')
print(li)  # [1, 'insert', 2, 'a', 'b']

# 迭代追加
li = [1, 2, 'a', 'b']
li.extend("cdef")
print(li)  # [1, 2, 'a', 'b', 'c', 'd', 'e', 'f']
li = [1, 2, 'a', 'b']
li.extend([3, 4, 5])
print(li)  # [1, 2, 'a', 'b', 3, 4, 5]

 

4.3列表的删

# pop 指定索引位置删除
li = [1, 2, 'a', 'b']
li.pop(0)  #
print(li)  # [2, 'a', 'b']
print(li.pop(0))  # 返回被删除元素
li.pop()
print(li)  # ['a'] 默认删除最后一个元素

# remove  删除指定元素
li = [1, 2, 'a', 'b']
li.remove('a')
print(li)  # [1, 2, 'b']

# clear 清空列表
li = [1, 2, 'a', 'b']
li.clear()
print(li)

# del 删除列表
li = [1, 2, 'a', 'b']
del li
# print(li)  报错
# 删除指定索引元素
li = [1, 2, 'a', 'b']
del li[1]
print(li)  # [1, 'a', 'b']
# 删除指定切片元素
li = [1, 2, 'a', 'b']
del li[0:2] 
print(li)  # ['a', 'b']
# 删除指定切片+步长元素
li = [1, 2, 'a', 'b']
del li[0:3:2]
print(li)  # [2, 'b']

4.4列表的改

# 根据索引赋值
li = [1, 'a', 'b']
li[0] = 'v'
print(li)

# 根据切片赋值
li = [1, 'a', 'b']
li[0:2] = 'dasf'
print(li)  # ['d', 'a', 's', 'f', 'b']

# 根据切片+步长赋值   一一对应
li = [1, 'a', 'b']
li[::2] = '对应'
print(li)  # ['对', 'a', '应']

 

4.5列表的查

li = [1, 2, 'a', 'b']
for i in li:
    print(i)

i = 0
while i < len(li):
    print(li[i])
    i += 1

 

4.6列表的其他方法

li = [1, 2, 'a', 'b']
# count 计算某个元素出现个数
print(li.count('a'))
# len
print(len(li))
# index
print(li.index('a'))
# sort
li = [3,2,5,1,4]
li.sort()
print(li)  # [1, 2, 3, 4, 5]
li.sort(reverse=True)
print(li)  # [5, 4, 3, 2, 1]
# reverse
li.reverse()
print(li)

# join 可以实现将列表转成字符串,实现无缝连接
# 字符串转成列表 split 
li = ['1', '2', 'a', 'b']
print('_'.join(li))  # 1_2_a_b

 

4.7列表嵌套

# 列表嵌套: 列表中包含列表
li = [1, 2, [3, 4, 5], 6, 7, 8]
print(li[2]) # [3,4,5]
print(li[2][0]) # 3

 

5.tuple(不可变类型)

5.1元祖的索引和切片

tu = (1, 2, 3, [4, 5, 6])
# 通过索引获取元祖中的元素
print(tu[0])
# 通过切片获取元祖中的元素
print(tu[0:3])  # (1, 2, 3)

5.2元祖操作方法

# 直接从属于元组的元素不能更改,所以元组只能查看。
tu = (1, 2, 3, [4, 'a', 'b'], 'z')
for i in tu:
    print(i)

# 直接从属于元素元素不能更改,元祖中元素中的元素可能可以修改
tu = (1, 2, 3, [4, 'a', 'b'], 'z')
tu[3][2] = 'c'
print(tu)  # (1, 2, 3, [4, 'a', 'c'], 'z')

# count
print(tu.count('a'))
# len
print(len(tu))

 

6.dict

6.1字典的增

6.2字典的删

6.3字典的改

6.4字典的查

6.5字典的其他方法

6.6字典嵌套

7.set

7.1集合的增

7.2集合的删

7.3集合的改

7.4集合的查

7.5集合的其他方法

8.其他

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄