# TODO 2022/11/29 18:20
"""
*定义列表
*追加数字
*尾部追加
*列表取出第一个元素
*取出最后一个元素
*元素的下标位置
"""
"""
mylist=[1,2,3,4,5,6]
mylist.append(50)
print(f"追加:{mylist}")
mylist.extend([100,200,300])
print(f"追加:{mylist}")
num=mylist[0]
print(f"列表取出第一个元素:{num}")
num=mylist[-1]
print(f"取出最后一个元素:{num}")
num=mylist.index(5)
print(f"元素的下标位置:{num}")
"""
"""
列表的元素
"""
"""
def list_func():
mylist=["张三","李四","王五"]
index=0
while index < len(mylist):
element=mylist[index]
print(f"列表的元素:{element}")
index=index+1
list_func()
"""
"""
whele 无限循环 自行控制
for 有限循环 固定次数循环
"""
"""
def list_for_func():
mylist = ["张三", "李四", "王五"]
for element in mylist:
print(f"列表的元素:{element}")
list_for_func()
"""
"""
取出列表的偶数
1 true
%2 取偶数
"""
"""
list1=[1,2,3,4,5,6,7,8,9,10]
new_list=[]
num=0
while num < len(list1):
if list1[num]%2==0:
new_list.append(list1[num])
num+=1
print(new_list)
"""
"""
求1到100的和
"""
"""
i=1
sum=1
while True:
i=i+1
sum+=i
if i==100:
break
print(sum)
"""
"""
闭包
intal_amount 账户余额 临时变量 一直累加
True 存钱
False 取钱
"""
"""
def account_create(intal_amount=0):
def atm(num,depolt=True):
nonlocal intal_amount
if depolt:
intal_amount+=num
print(f"存款:+{num},账户余额{intal_amount}")
else:
intal_amount -= num
print(f"存款:-{num},账户余额{intal_amount}")
return atm
a=account_create()
a(100)
a(200)
a(200,depolt=False)
"""
"""
装饰器
"""
"""
方式1
"""
"""
def outer(func):
def inner():
print("我睡觉了")
func()
print("我要起床了")
return inner()
def sleep1():
import random
import time
print("睡眠中。。。。。。。。")
time.sleep(random.randint(1,5))
f=outer(sleep1)
"""
"""
装饰器
方法2
装饰器就是一个闭包函数,在函数内调用目标函数
不改变函数的目标,增加额外的功能
"""
"""
def outer(func):
def inner():
print("我睡觉了")
func()
print("我要起床了")
return inner
@outer
def sleep():
import random
import time
print("睡眠中。。。。。。。。")
time.sleep(random.randint(1,5))
sleep()
"""