1.函数
2.迭代器
3.递归
4.数据库函数
5.fetchall函数
1.函数:实现指定功能代码的集合
def 函数名( ) :
2.在python中没有括号,函数体以缩进的方式进行展示
快捷键:tab实现了函数的缩进,shift+tab实现前移
3.调用:
函数名( )
作用:提高了代码的复用性
4.参数:
形参:没有实际值的参数
实参:传入的参数
注意:有实参必须先有形参
5.变量
全局变量:函数体外的变量 gloab 变量名
局部变量:函数体内的变量
6.数据类型
不可变数据类型:内容进行修改,id变化
类型:number,str,tuple
可变数据类型:内容进行修改,id不变
类型:list,dict,set
7.在其他模块调用函数
调用某个函数:from day04.a02_def(模块名) import getSum(函数名)
调用所有函数:from day04.a02_def(模块名) import *
8.return 返回值
9.参数
9.1 必传参数:必传,不可少传,不可多传,参数顺序固定
9.2 关键字参数:必传,不可少传,不可多传,参数顺序可变
def df(a,b):
print("关键字参数")
df(b=2,a=4)
9.3 默认值参数:可不传,可少传,不可多传,借助关键字参数顺序可变
def df(a=2,b=3):
print("默认值参数")
df()
9.4 不定长参数
def df(aa,bb,*args,**kwargs):
print("不定长参数")
print(args)
print(kwargs) #关键字
df(1,2,3,4,5,cc=8,dd=11)
# *args类型:元组 **kwargs:字典
10.常用函数
lamda函数:匿名函数,有默认的返回值
可以解决简单的运算问题
lambda 参数:表达式
只能返回一个值,可以是列表、元组
利用lamda切片
n = lambda a,b:(a+b,a[1])
11.迭代器:记住上一次的位置,下一次继续访问
iter(需要迭代的内容)
实现迭代 next(迭代器)
li_it = iter(li)
print(next(li_it))
12.递归:自己调用自己
实例:递归实现5的阶乘
def df(num):
if num != 1:
num = num * df(num-1)
return num
print(df(5))
13.python连接数据库
#导入数据库
import pymysql
#连接数据库
con = pymysql.connect("localhost","root","123456")
#connect(ip,用户名,密码)
操作步骤实例:
#导入数据库
import pymysql
#连接数据库
con = pymysql.connect("localhost","root","123456")
#创建游标
cur = con.cursor()
#写sql语句
sql = "create database pytest"
#执行sql语句
cur.execute(sql)
#提交事务
con.commit()
#关闭连接
con.close()
数据库封装 查询
def dfsel(sql1,database1):
con = pymysql.connect("localhost","root","123456")
cur = con.cursor()
sql0 = "use " + database1
cur.execute(sql0)
cur.execute(sql1)
data = cur.fetchall() #取出所有数据,取出后为空
con.commit()
con.close()
return data
#调用查询方法
sql = "select * from student"
dfsel(sql,"woniu_day01")