一、字符串
字符串是用于存储和表示文本数据的基本数据类型。它可以包含字母、数字、标点符号等字符,以及空格和其他特殊字符。
1.字符串转换
- Python使用
ord()
函数将一个字符转换为其对应的ASCII码。 - Python使用chr
()
函数将ASCII码转换为其对应的一个字符。 - python使用函数
int()
和bin()
,oct()
,hex()
来实现进制的转换
# 字符与ASCII码的转换
print(ord("A")) # 65
print(chr(65)) # A
# 进制转换
print(bin(78)) # 0b1001110
print(oct(78)) # 00116
print(hex(78)) # 0x4e
位移运算
# 左移, 1100 (12) << 1 11000 (24)
# a = 0b111100
a = 100
print(a<<1) # a=60,左移1位,相当于2,左移2位,4
print(a>>1) # a=60,右移1位,相当于/2
2.字符串切片
使用切片操作符:
来获取字符串的子串。
source = 'HelloWorld'#定义字符串变量
print(source[2]) #打印字符串中索引为2的字符即e
print(source[0:5]) #打印从索引0开始到索引5之前(不包括5)的子字符串
print(source[1:]) #打印从索引1开始到字符串末尾的所有字符
print(source[:5]) #打印从字符串开始到索引5之前的子字符串
print(source[-1]) #打印字符串中的最后一个字符
print(source[1:-2]) #打印从索引1开始到倒数第二个字符之前的所有字符
print(source[0:5:2]) #打印从索引0开始到索引5之前,步长为2的子字符串
拼接(Concatenation):使用+运算符将两个或多个字符串连接在一起。
str1 = "Hello"
str2 = "World"
result = str1 + " " + str2
print(result) # 输出:Hello World
3.字符串内置函数
- 长度(Length):使用
len()
函数获取字符串的长度。 - 分割(Splitting):使用
split()
方法将字符串分割成子串列表。 - 编码字符串:将字符串转换为字节串(bytes),以便进行存储或传输。使用encode()decode()方法进行转换。
- 替换(Replacement):使用
replace()
方法替换字符串中的某个子串。 - 大小写转换(Case Conversion):使用
upper()
和lower()
方法将字符串转换为大写或小写。 - 查找(Finding):使用
find()
方法查找子串在字符串中的位置。
print(source.count('1')) # 子字符串在字符串中出现的次数
print(len(source)) # 取字符串长度
source = "zhang, li, wang, zhao, zhou"
print(source.split(','))
list = [ 'zhang', 'li', 'wang', 'zhao', 'zhou']
print('#'. join(list))
# 假设有一个UTF-8编码的字符串
text = "你好,世界!"
# 将字符串编码为字节串
encoded_text = text.encode("UTF-8")
print(encoded_text) # 输出:b'\xe4\xbd\xa0\xe5\xa5\xbd\xef\xbc\x8c\xe4\xb8\x96\xe7\x95\x8c\xef\xbc\x81'
# 假设有一段UTF-8编码的字节串
encoded_text = b'\xe4\xbd\xa0\xe5\xa5\xbd\xef\xbc\x8c\xe4\xb8\x96\xe7\x95\x8c\xef\xbc\x81'
# 将字节串解码为字符串
decoded_text = encoded_text.decode("UTF-8")
print(decoded_text) # 输出:你好,世界!
source = '\t Hello \t '
print(source.strip()) # 清除字符串左右的不可见字符
str1 = "Hello, World!"
print(str1.upper()) # 输出:HELLO, WORLD!
print(str1.lower()) # 输出:hello, world!
str1 = "Hello, World!"
result = str1.replace("World", "Python")
print(result) # 输出:Hello, Python!
二、列表
Python列表的作用是存储一系列有序的元素,这些元素可以是数字、字符串、布尔值等。列表是可变的,可以添加、删除和修改其中的元素。列表在Python中是一种基本的数据结构,常用于存储和操作一组相关的数据。
- 创建列表:可以通过方括号
[]
或者list()
函数创建一个列表 - 访问元素:通过索引(下标)访问列表中的元素。
- 修改元素:通过索引直接修改列表中的元素。
- 添加元素:使用
append()
方法在列表末尾添加新元素。 - 插入元素:使用
insert()
方法在指定位置插入新元素。 - 删除元素:使用
remove()
或pop()
方法删除元素。 - 列表切片:使用切片操作符获取子列表。
- 列表长度:使用
len()
函数获取列表的长度。 - 列表排序:使用
sort()
方法对列表进行排序。 - 反转列表:使用
reverse()
方法反转列表中的元素顺序。 - 列表合并:使用
+
运算符或extend()
方法合并两个列表。 - 列表遍历:使用循环结构遍历列表中的每个元素。
#创建列表
list = ['张三', '李四', '王五', '赵六', True, 13245]
#访问列表
print(list[2]) # 王五
#切片
print(list[1:3]) # 从第2个开始,到第4个之前
print(list[-1]) # 13245
#修改元素
list[0] = 'zs'
#添加元素
list.append('last')
#删除元素
list.remove(123456)
removed_element = list.pop(2)
#插入元素
insert(1,'赵武')
#列表长度
length = len(list)
#列表排序
list.sort()
#列表反转
list.reverse()
#列表合并
combined_list = list1 + list2
list1.extend(list2)
# 遍历列表
list = ['张三', '李四', '王五', '赵六', True, 12345]
#使用下标的方式进行遍历,
for i in range(0, len(list)):
print(i, end='\t')
print(list[i])
# 直接用for...in直接取值
for item in list:
print(item)
#对元组的操作是完全一样的
tup = ('张三', '李四', '王五', '赵六', True, 13245)
print(tup[-2])
print(random.choice(tup)) #随机取元组里的元素
三、字典
Python列表的作用是存储一系列有序的元素,这些元素可以是数字、字符串、布尔值等。列表是可变的,可以添加、删除和修改其中的元素。列表在Python中是一种基本的数据结构,常用于存储和操作一组相关的数据。
创建字典: 可以使用大括号{}
或者dict()
函数创建一个字典。
访问元素: 通过键来访问字典中的值。
添加元素: 直接通过新的键赋值来添加元素。
更新元素: 通过键来更新字典中的值。
删除元素: 使用del
关键字通过键来删除元素。
获取字典长度: 使用len()
函数来获取字典中键值对的数量。
字典遍历: 遍历字典的键、值或键值对。
合并字典: 使用update()
方法
清空字典: 使用clear()
方法来清空字典中的所有元素
# 字典创建
student = {'name':'张三','age':18, 'sex':'男'}
# 字典的访问
print(student['name'])
print(student.get('age'))
# 字典添加元素
student['id']='1'
# 字典的更新:直接通过key修改值,如果key不存在,则会新增到字典中
student['sex']='女'
print(student)
student['id']='1'
print(student)
#字典删除元素
del student['id']
# 字典的删除
student.pop('id')
print(student)
#去字典长度
length = len(student)
# 字典的遍历:按照key遍历
for k in student:
print("Key:%s, Value:%s"% (k, student[k]))
for k in student.keys():
print(k)
# 直接遍历值
for v in student.values():
print(v)
# 直接Key和Value一起遍历,student.items()返回元组,可以直接按顺序赋值给k和v变量
for kv in student.items():
print(kv)
for k, v in student.items():
print(k, v)
student.update({'id':'2,'age':20})
print(student)
#清空字典
student.clear()
每日一言:人生到处知何似,应似飞鸿踏雪泥。