一、基础语法
1、注释
print("hellp")#打印hello,单行注释 """ 这是多行注释 """ print("heool word")#单行注释快捷键ctrl + /
2、变量
数字(number):整数(int)/小数(float)、字符串(str)、布尔(bool)
3、格式化输入输出
name = input("请输入你的名字") age = int(input("请输入你的年龄")) sex = input("请输入你的性别") print("我的名字是%s,我的年龄是%d,我的性别是%s"%(name,age,sex))
4、分支语句
if语句
age = int(input("请输入你的年龄")) if 18 <= age <= 60: print("请进入上网") elif 60 < age <= 90: print("太老了,不能上网") elif age > 90: print("你成仙啦") else: print("太小了,不能上网")
if嵌套
随机数
import random num = random.randint(0,100) while True: youNumber = int(input("请输入你的数字")) if youNumber > num : print("你猜的数字大了") elif youNumber < num: print("你猜的数字小了") elif youNumber == num: print("你猜对了") break
循环语句
num = 0 total = 0 while num <= 100: if num%2==0: total = num + total num += 1 print(total)
乘法口诀表
j = 1 while j<=9: i=1 while i <= j: print("%d*%d=%d\t"%(i,j,i*j),end="") i += 1 print("") j +=1
二、数据结构
0、数字
整数(int)
浮点数(float)
复数(complex)
不同类型数据计算,会转化为精度更高的那一种,复数>浮点数>整数
1、列表
定义: list最频繁使用的一个容器,相当于数组
list1=[]
list1 = ["zhangs","lisi",45,3,True,3,88]
list2 = [1,2,3]
list3 = [6,7,8,4,3]
print(list1[1])
list1.append(98)#末尾添加数据
list1.insert(1,"王二麻子")#指定位置添加数据
list1.extend(list2)#将可迭代对象中的元素,添加到列表中
del(list1[0])#删除指定索引的数据
list1.remove(3)#删除第一个出现的数据
print(list1.pop())#删除末尾数据并返回
list1.pop(3)#删除指定索引的数据
# list3.clear()清空列表
list2[0] = "赵四"#修改数据
list2.index(2)#根据值查索引,返回首次出现的索引,没有会报错
list1.count("zhangsan")#数据的数量
print(len(list1))#列表长度
if 3 in list3:
print("有")
# 排序
list3.sort()#升序
list3.sort(reverse=True)
list3.reverse()#逆序
for name in list3:
print(name)
2、元组
Tuple
(元组)与列表类似,不同之处在于元组的元素不能修改
my_tuple=(1,2,3)
3、字典
4、字符串
字符串:
创建字符串
引号法
str()
s1=str(111)
字符串的运算
字符串的运算,实际是生成一个新的字符串
+表示拼接
*表示复制
字符串的方法
实际是生成新的字符串
Capitalize() 首字母大写
Title() 每个单词首字母大写
Upper() 字母全部大写
Lower() 字母全部小写
Swapcase() 大小写反转
判断
Startswith() 是否以某字符串开头
Endswith()是否以某个字符串结尾
Isdecimal()是否是十进制数字组成
Isnumeric()是否由数字组成()
Isalpha()是否由字母组成
Isascii()是否由数字和字母组成
Islower是否由小写字母组成
Isupper()是否由大写字母组成
分割和链接
Split(sep=None)分割 以sep参数作为分隔符,分割成列表
Join(iterable) 以字符串为连接符,把参数组成字符串
import time
# 闭包本质上是一个函数
# 闭包函数的传入参数和返回值也都是函数
# 闭包函数的返回值函数是对传入函数进行增强后的结果
def fun_add(fun):
# 增强函数
def fun1():
startime = time.time()
fun()
endtime = time.time()
print(float(endtime-startime))
# 返回增强函数,后面不可带括号
return fun1
# 装饰器
@fun_add
def cal():
sums = 0
for i in range(20000000):
if i % 2 ==0:
sums +=i
print(sums)
if __name__ == '__main__':
cal()
"""
通过装饰器进行函数的增强,只是一种语法糖,在第一次调用被装饰的函数时增强,只增强一次
"""
import time
def add_fun(fun):
# 闭包,增强函数fun:给fun增加新功能,将fun增强为func
def func(*args,**kwargs):#接收函数参数
start_time = time.time()
ret = fun(*args,**kwargs) #执行原函数fun,传入参数,记录返回值
end_time = time.time()
print(float(end_time-start_time))
return ret
return func #返回增强后的函数
@add_fun
def fun1(a,b):
c=a+b
return c
if __name__ == '__main__':
print(fun1(23,22))