到今天 python基础部分的学习就已经完成了,这两天进行了复习,以及未学基础知识的补充
包括字典和集合,扩展了斐波拉契数列的求法,相关代码如下
'''
### 1. 集合(Set)
集合是一组无序且唯一的元素。在Python中,集合用花括号 `{}` 表示,或使用 `set()` 函数来创建。集合的特点是:
- **无序**:集合不保证元素的顺序。
- **元素唯一性**:集合中的元素不会重复。
#### 集合的基本操作
```python
# 创建集合
fruits = {"apple", "banana", "cherry"}
# 或使用 set() 函数
unique_numbers = set([1, 2, 3, 4, 4, 5])
#获取集合长度
length=len(unique_numbers)
#将集合转换为列表
lst=list(unique_numbers)
# 添加元素
fruits.add("orange")
#随机取出一个元素
element=fruits.pop()
print(element) #取出来后集合中不存在
#情空集合
fruits.clear()
# 删除元素
fruits.remove("banana")
# 集合运算:并集、交集、差集
set1 = {1, 2, 3}
set2 = {3, 4, 5}
print(set1 | set2) # 并集 {1, 2, 3, 4, 5}
print(set1 & set2) # 交集 {3}
print(set1 - set2) # 差集 {1, 2}
```
'''
# 集合运算:并集、交集、差集
set1 = {1, 2, 3}
set2 = {3, 4, 5}
set3=(set1 | set2) # 并集 {1, 2, 3, 4, 5}
print(set3)
#print(set1 & set2) # 交集 {3}
#print(set1 - set2) # 差集 {1, 2}
#print(set1 ^ set2) # 对称差集 {4,5}
'''
文件说明:
不能通过下标索引
字典的定义
#定义字典字面值
{key:value,key:value,...,key:value}
#定义字典变量
my_dict={key:value,key:value,...,key:value}
#定义空字典
my_dict={}
my_dict=dict()
字典的常见操作
增改
字典[key]=value #如果key不存在就是新增,如果存在就是修改
删除
字典.pop("key")
清空元素
字典.clear()
获取全部的key
字典.keys()
遍历字典
for key in keys
print(f"字典的key是{key}")
print(f"字典的value是{字典[key]}")
统计字典的元素数量
len(字典)
'''
#定义字典
# my_dict={"王鸣鸿":99,"周杰伦":88,"林俊杰":77}
# print(my_dict["林俊杰"])
#定义嵌套字典
score={"福福":{"语文":100,"数学":99,"英语":98},"jianqi":{"语文":1,"数学":2,"英语":3}}
print(score["福福"]["语文"])
score["beibei"]={"语文":2,"数学":23,"英语":34}
print(score)
score.pop("beibei")
print(score)
#练习
'''1.定义空字典d
2.向d新增2个键值对元素
3.修改第2个元素(指新增的第2个元素)
4. 判断字符“C"是否是d的键
5.获取所有值
6.获取所有键
7.使用d.items()和列表方式获取第2个元素的值
8.使用其他2种方式获取第2个元素的值
9.使用d.get()方式获取自定义的默认值
10.计算d的长度
11.清空d'''
# 1. 定义空字典 d
d = {}
# 2. 向 d 新增 2 个键值对元素
d['A'] = 1
d['B'] = 2
print("新增后字典内容:", d)
# 3. 修改第 2 个元素(指新增的第 2 个元素)
d['B'] = 3
print("修改第2个元素后字典内容:", d)
# 4. 判断字符 "C" 是否是 d 的键
is_C_key = 'C' in d
print("字符 'C' 是否是字典的键:", is_C_key)
# 5. 获取所有值
values = d.values()
print("字典的所有值:", list(values))
# 6. 获取所有键
keys = d.keys()
print("字典的所有键:", list(keys))
# 7. 使用 d.items() 和列表方式获取第 2 个元素的值
second_value_via_items = list(d.items())[1][1]
print("使用 d.items() 获取第2个元素的值:", second_value_via_items)
# 8. 使用其他 2 种方式获取第 2 个元素的值
# 方式一:直接访问键
second_value_via_key = d['B']
print("使用键直接获取第2个元素的值:", second_value_via_key)
# 方式二:将字典转成列表索引访问
second_value_via_list = list(d.values())[1]
print("将字典值转成列表获取第2个元素的值:", second_value_via_list)
# 9. 使用 d.get() 方式获取自定义的默认值
value_with_default = d.get('C', '默认值')
print("使用 d.get() 获取自定义默认值:", value_with_default)
# 10. 计算 d 的长度
length = len(d)
print("字典的长度:", length)
# 11. 清空 d
d.clear()
print("清空后字典内容:", d)
#补充
#list() 函数将字典的键、值或键值对转为列表。这里分别演示将字典的 键、值和键值对转换为列表后的结果。
#假设有一个字典 d:
d = {'A': 1, 'B': 2}
### 1. 转换字典的键为列表
#使用 list(d.keys())将字典 d的所有键转成列表:
keys_list = list(d.keys())
print(keys_list) # 输出: ['A', 'B']
#转换后,keys_list是包含字典所有键的列表,结构是:['A', 'B']。
### 2. 转换字典的值为列表
#使用 list(d.values()) 将字典 d的所有值转成列表:
values_list = list(d.values())
print(values_list) # 输出: [1, 2]
#转换后,values_list是包含字典所有值的列表,结构是:[1, 2]。
### 3. 转换字典的键值对为列表
#使用list(d.items())将字典d的所有键值对转成列表:
items_list = list(d.items())
print(items_list) # 输出: [('A', 1), ('B', 2)]
#转换后items_list是包含字典键值对的列表,每个键值对是一个元组,结构是[('A', 1), ('B', 2)]。
### 总结
#- list(d.keys()):返回字典的键列表,例如 ['A', 'B']。
#- list(d.values())返回字典的值列表,例如 [1, 2]。
#- list(d.items()):返回字典的键值对列表(每个键值对是一个元组),例如 [('A', 1), ('B', 2)]。
#一次性赋值
#a,b = 1,2
#a,b = b,a+b
#循环
# li= []
#
# def fib(n):
# a,b=0,1
# for i in range(n):
# a,b=b,a+b
# li.append(a)
# return a
# print(fib(10))
# print(li)
#递归
def fib(n):
if n<=2:
return 1
else:
res=fib(n-1)+fib(n-2)
return res
#改成三目运算
return 1 if n<=2 else fib(n-1)+fib(n-2)
print(fib(10))
从明天开始 就开始学习my_sql部分了

被折叠的 条评论
为什么被折叠?



