一.列表生成式
s =[1,2,3,4,5,6,7,8]
for i in s:
print(i+1)
res = [ i+1 for i in s]
res = [str(i) for i in s]
二.函数
1.基本概念
实现某个功能的一些代码。
提高代码的复用性。
函数必须被调用才会执行。
函数里面定义的变量:局部变量,只要一出了函数都不能用了
def hello():
print('hello')
hello() #调用函数
2.return 的作用:
1、把函数处理的结果返回
2、结束函数,函数里面遇到return,函数立即结束
3.全局变量
list、字典、集合,不需要声明
字符串、int、float、元组 需要声明global
4.浅拷贝:两个变量指向的是同一块内存地址
深拷贝:是会开辟一个新的内存,存放数据,就是两块不同内存。
list不能remove,会出问题
5.传参方式
def mysql(host,user,password,port,charset,sql,db):
1. mysql('ip','user','sdfsdf',3306,'sdfsdf','select','db')
2.mysql(user='root',password='123456',host='192.168.1.3',port=3306,sql='sdfsdf',db='sdfsdf',charset='sdfsdf')
3.mysql('192.168.1.1','root',port=3306,password='sdfsdf')
4. def mysql2(ip,*args):
print(args)
mysql2('user',13345435,00000,'sefsd','sdfds')
5.def calc(a,b,c):
print(a+b)
return a+b
l = [1,2,3]
calc(*l)
6.关键字参数
def mysql(**mysql_info):
print(mysql_info)
mysql(header='sdfsdfsdf=sdfdsfs',file='/xx/xxx/a.txt')
7.def mysql(host,user,password,port,charset,sql,db):
print('连接mysql')
dic = {
'host':'192.168.1.1',
'user':'root',
'password':123456,
'port':3306,
'charset':'utf-8',
'sql':'sql',
'db':'db'
}
mysql(**dic)
总结:
参数类型:
1、必填参数,位置参数
2、默认值参数,非必传
3、可变参数,非必传,不限制参数个数,
比如说给多个人发邮件,发邮件的人数不确定
4、关键字参数,非必传,不限制参数个数
会把传过来的关键字参数,放到一个字典里面,传参的时候必须得用k=v这样子来传