Python 高级变量之字典和字符串详解
一、字典的基本概念和使用
1.1 什么是字典?
在 Python 中,字典是一种无序、可变、键-值对(key-value pair)的数据类型。字典中的键必须是不可变的,如字符串、数字等;而值可以是任意数据类型,如整数、浮点数、列表、元组、字典等。
1.2 字典的创建
可以通过以下方式创建空字典:
dict1 = {} # 空字典
dict2 = dict() # 空字典
也可以通过以下方式创建包含键值对的字典:
dict3 = {"name": "Tom", "age": 18, "gender": "male"} # 字典中元素之间用逗号分隔,并使用 { } 括起来
dict4 = dict(name="Jerry", age=20, gender="male") # 使用 dict() 函数创建字典,参数为键值对
1.3 字典的访问和遍历
可以使用[]
或者 get()
方法访问字典的值,如:
person = {"name": "Tom", "age": 18, "gender": "male"}
print(person["name"]) # 输出结果为 "Tom"
print(person.get("age")) # 输出结果为 18
使用for...in
循环可以遍历字典中的所有键值对,如:
person = {"name": "Tom", "age": 18, "gender": "male"}
for key, value in person.items():
print(key, ":", value)
1.4 字典的操作
可以使用 del
关键字删除字典中的元素,如:
person = {"name": "Tom", "age": 18, "gender": "male"}
del person["age"] # 删除字典中键为 'age' 的元素
print(person) # 输出结果为 {"name": "Tom", "gender": "male"}
可以使用 update()
方法对字典进行合并或更新,如:
person1 = {"name": "Tom", "age": 18, "gender": "male"}
person2 = {"name": "Jerry", "age": 20, "hobby": ["reading", "running"]}
person1.update(person2) # 合并 person1 和 person2
print(person1) # 输出结果为 {"name": "Jerry", "age": 20, "gender": "male", "hobby": ["reading", "running"]}
1.5 字典的示例应用
通过字典可以轻松地实现一个简单的电话本程序:
phone_book = {"Tom": "13001234567", "Jerry": "15001112222", "Lucy": "18012345678", "Lily": "18612341234"}
while True:
name = input("请输入姓名:")
if name in phone_book:
print("{} 的电话号码是:{}".format(name, phone_book[name]))
else:
phone = input("该用户不存在,请输入手机号码:")
phone_book[name] = phone
print("已将 {} 的信息加入电话本。".format(name))
二、字符串的基本概念和使用
2.1 什么是字符串?
字符串是 Python 中最常用的数据类型之一,是由多个字符组成的序列。
2.2 字符串的创建
可以使用一对单引号或一对双引号创建一个字符串,如:
str1 = 'Hello, Python!'
str2 = "Let's go!"
也可以使用三个单引号或三个双引号创建一个多行字符串,如:
str3 = '''
第一行
第二行
第三行
'''
2.3 字符串的访问和切片
可以使用[]
访问字符串中的单个字符,如:
str1 = 'Hello, Python!'
print(str1[0]) # 输出结果为 "H"
可以使用切片操作访问字符串的子串,如:
str1 = 'Hello, Python!'
print(str1[0:5]) # 输出结果为 "Hello"
2.4 字符串的操作
可以使用 +
号将两个或多个字符串拼接起来,如:
str1 = 'Hello, '
str2 = 'Python!'
str3 = str1 + str2 # 字符串拼接
print(str3) # 输出结果为 "Hello, Python!"
可以使用 *
号将字符串重复多次,如:
str1 = 'Hello! '
str2 = str1 * 3 # 字符串重复 3 次
print(str2) # 输出结果为 "Hello! Hello! Hello! "
可以使用 split()
方法将字符串分割成列表,如:
str1 = 'Hello,Python,World!'
lst1 = str1.split(',') # 将字符串用逗号分割,返回一个列表
print(lst1) # 输出结果为 ["Hello", "Python", "World!"]
可以使用 join()
方法将列表或元组中的字符串连接成一个字符串,如:
lst2 = ["Hello", "Python", "World"]
str2 = " ".join(lst2) # 将列表元素以空格连接成一个字符串
print(str2) # 输出结果为 "Hello Python World"
2.5 字符串的示例应用
通过字符串可以实现对文本进行简单的加解密操作:
def encode(text, key):
'''对文本进行加密'''
result = ''
for char in text:
result += chr(ord(char) + key)
return result
def decode(text, key):
'''对文本进行解密'''
result = ''
for char in text:
result += chr(ord(char) - key)
return result
text = input("请输入要加密的文本:")
key = int(input("请输入加密密钥:"))
encoded = encode(text, key)
print("加密结果为:{}".format(encoded))
decoded = decode(encoded, key)
print("解密结果为:{}".format(decoded))
以上就是 Python 高级变量之字典和字符串的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python 高级变量之字典和字符串详解 - Python技术站