本帖最后由 武汉8期-胡钧俊 于 2021-11-12 20:18 编辑
python当中的函数:
函数在编程语言当中称之为方法
第一种:python自带的函数:print input list tuple
第二种:自定义函数----其他程序员编写好的函数代码,叫做自定义函数,自己封装的方法
定义函数
1.定义一个函数用def进行开头
2.函数是由函数名称以及函数体部内容组成
3.函数当中的第一行内容都是用来注释,用来表示我函数用来实现某种功能
4.函数体部内容遵循缩进的语法规则
5.实现代码的封装,提高重复使用的效率
定义一个函数:
def function(): #函数头部的定义,括号用来存放形式参数
print("hello word")
#实现一个打印hello Word 的功能
#想要运用函数的功能,需要通过函数名称进行调用使用
function()
二、函数调用的方法
def function():
print("hello word")
#第一种在本模块中调用----直接通过函数名称进行调用function()
#第二种主函数调用---主函数调用可以防止我主函数下面的内容被其他模块进行引用
if __name__=='__nain__':
function()
三、函数当中的参数
形式参数:定义在括号里面的参数值
实际参数:调用这个函数实际给的值
def func (name,age): #定义一个name 和age的形式参数
print("我叫"+name+"今年"+age) #使用 形式参数
func("小王","18") #小王和18 这个值是我实际当中调用这个函数----实际给的值,这值叫做实际参数
def func(name,where,action): #我定义函数接收的值的名称叫做形式参数
print(name,where,action)
实际给的值---实际参数func("陈麻子","去东莞","洗脚")
func("刘麻子","去新疆","晒太阳")
默认参数:也叫缺省参数def func(name="陈麻子",where="去东莞",action="洗脚"):
print(name, where, action)
func("陈麻子","去东莞","洗脚") #定义中不填指定的参数名称
func(name="刘麻子",where="去新疆",action="晒太阳")
func(name="刘麻子")
mysql中的函数没有返回值python中的函数是拥有返回值,return:
1,函数的返回值是由return来决定的,return后面写什么这个函数就返回什么
2,如果函数中没return语句,函数默认返回一个None
3,如果写了return没有给值,函数返回的也是None
4,函数当中要返回多个数据,要进行逗号隔开,返回的是元组类型
def func(): #没有return语句func就是一个空盒子
print("hello word") #打印输出
print(func())
def func2():
return "hello word2" #return是会返回
#return 语句把hello Word这个个值返回给这个函数名称----函数就具备了hello Word属性
print(func2())
def number():
num = 100
num1 = 200
return num,num1
print(number())
print(number()[1])根据索引其他的返回值
def numer1():
a = number()[1]
return a * 3
print(numer1())
"""return 语句 碰到return语句立即返回,用于结束函数的运行,遇到return立即跳出函数"""
def fun():
print("hello word")
# return #return 下面的语句不会被执行
#函数碰到return立即返回结束
print("武汉8期")
fun()
函数当中的变量
全局变量:作用当前变量下面的所有函数
局部变量:自会生效与当前的函数内
global:申明变量----申明局部变量为全局变量
"""
num = 300 #全局变量
def func():
global num #申明局部变量为全局变量
num = 1000 #函数体部当中的局部变量
print(num)
func()
def func2():
print(num)
func2()
练习题:
def func():
a = input("请输入账号:")
if a == "hu":
b = input("请输入密码:")
if b == "123":
return("登录成功")
#func()
def func1():
s = func()
if s == "登录成功":
print("余额:1000000000000000")
else:
print("错误")
func1()
可变长元组:当你不确定你传的实际参数的个数时候,可以使用可变长元组来接收值 *
def func(*values):
print(values)
func("小胡","小陈","小王")
可变长字典:
1.传入两个**
2.传入的两个字典如果有重复的key会报错
"""
dict1 = {"湖北":"武汉"}
dict2 = {"湖南":"长沙"}
def func(**dict):
print(dict)
# 第一种方法:
func(**dict1,**dict2)
# 第二种方法:
func(name="湖北",age="18")
# 第三种方法:
func(**{"湖南":"长沙","湖北":"武汉"})
python内置函数
"""format()也是用于格式化输出"""
str1 = "武汉8期"
print("多测师{}就是棒".format(str1))
print("namae{} age{} where{} action{}".format("陈麻子","20岁","喜欢去东莞","修车"))
"""list 输出的方法"""
list1 = [1,2,3,4,5,]
list2 = ["22","33"]
print("{}{}{}".format(list1[1],list1[0],list1[3]))
print("{0[1]} {1[1]}".format(list1,list2)) #0代表list1
"""参数名称输出"""
print("姓名{name},年纪{age}来学测试".format(name="陈麻子",age="21"))
"""format输出字典:"""
dict1 = {"湖北":"武汉","湖南":"长沙"}
print("城市1{湖北} 城市2{湖南}".format(**dict1))
"""
zip函数,他是一个打包函数,返回的是一个多维数组
"""
list1 = ["武汉","长沙","南昌"]
list2 = ["湖北","湖南"]
list3 = list(zip(list1,list2))
print(list3)
"""一般工作场景当中都是打包完成之后转换成dict字典"""
list3 = dict(list3) #转为字典
print(list3)
"""open函数打开一个文本"""
# a = open(r"C:\Users\szyc\PycharmProjects\wuhan8\demo\xiaohu",mode="r",encoding="utf-8")
"""读的模式 三种方法"""
print(a.read()) #显示全部的内容
print(a.readline()) #只显示第一行的内容
print(a.readlines()) #返回所有的数据存放在一个list当中
"""写的方法"""
file = open(r"C:\Users\szyc\PycharmProjects\wuhan8\demo\xiaohu",mode="w",encoding="utf-8")
file.write("hello") #他会把原有的数据给覆盖掉
file.writelines("hello你好") #他会把原有的数据给覆盖掉
"""追加的模式 a 在原有的基础之上进行追加内容"""
file = open(r"C:\Users\szyc\PycharmProjects\wuhan8\demo\xiaohu",mode="a",encoding="utf-8")
file.writelines("武汉8期") #他会在原有的数据后追加
file.close() #打开写完之后,关闭文件
"""with open 可以不用手动关闭文件 close"""
with open(r"C:\Users\szyc\PycharmProjects\wuhan8\demo\xiaohu",mode="a",encoding="utf-8") as file:
file.write("你好多测师")
with open(r"C:\Users\szyc\PycharmProjects\wuhan8\demo\xiaohu",mode="r",encoding="utf-8") as file:
print(file.read())
|
|