找回密码
 立即注册

推荐阅读

  • 便民服务
  • 关注我们
  • 社区新手
python当中的函数
函数在编程语言当中称之为方法:
第一种:python自带函数:print ,input,list,tuple
第二种:自定义函数--其他程序员编写好的函数代码,叫做自定义函数。自己封装的方法

定义函数遵循的方法
1,定义一个函数def进行开头
2,函数是由函数名称以及函数体部内容组成
3,函数当中第一行都是用来注释,用来表示我函数用来实现某种功能
4,函数要遵循缩进的语法
5,实现代码的封装,提高代码的重复使用效率

一,定义一个函数:def
# def function():#函数头部的定义,括号用来存放形式参数
#     poss
# print("hello word")
# function()

二,函数调用的方法
# def function():
#     print("hello word")
第一种在本模块调用 --直接通过函数名称进行调用
# function()
第二种主函数调用--主函数调用可以防止我主函数下面的内容被其他模块调用
# if __name__ =='__main__': #他是一个if判断语句,当我__name__ =='__main__'的时候他下面的代码才会被运行
#     function()            #__name__ :是模块名称的意思,在当前本模块打印输出的结果是
# print("武汉八期")
# 总结:if __name__ =='__main__':可以保证脚本被导入。进行调用函数方法时,不会调用主函数下面的代码。也就防止我不想运行的代码被其他模块进行引用

引用deom5的中的function
# from demo import deom5 #进行导入demo这个项目包下面的deom5模块进行使用
# deom5.function()
# hello word
# 武汉八期
# hello word
# print(deom5.__name__)
# deom5.__name__ :它不等于'__main__'所以我主函数下面的代码不会执行

三,函数的参数
形式参数:定义在括号里面的参数值
实际参数:调用这个函数实际给的值

# def func(name,age):    #定义函数接收的值的名称叫做形式参数
#     print("我叫",name,"今年",age) #
# func("小陈","十八")# 实际给的值,实际参数
# def func(name,where,action):
#     print(name,where,action)
# func("刘艺","是","傻逼")
# func("刘艺","是","傻逼")

# 默认参数:也叫缺省参数
# def func(name="小陈",where="上海",oction="洗脚"):
#     print(name,where,oction)
# func("刘艺","是个","大傻逼")
# func(name="小刘",where="去北京",oction="大保健")
# func(name="小胡")
# func(where="去北京")

# mysql中的函数没有返回值
# python当中的函数是拥有返回值的
# return:
# 1,函数的返回值是由return来决定的,return后面写什么这个函数就返回什么
# 2,如果函数中没return语句,函数默认返回一个None
# 3,如果写了return没有给值,函数返回的也是None
# 4,函数当中要返回多个数据,要进行逗号隔开,返回的是元组类型
# def func():#没有return语句func就是一个空壳子
#     print("hello word")#打印输出
# func()

# def func2():#return是返回
#     return "hello word2"
#     #return 语句把hello word这个值返回给这个函数名称---函数就具备了---hello word属性
# func2()
# print(func2())

# return返回多个值的场景
# def number():
#     num = 100
#     num1 = 200
#     return num,num1
# print(number()[1])#根据索引取它的返回值
# def number1():
#     a = number()[1]
#     return a * 3
# print(number1())

# return 语句 碰到return语句立即返回
# 用于结束函数的运行,遇到return立即跳出函数
# def func():
#     print("刘艺在厕所")
#     return #碰到return语句,下面的语句不会被执行
#             #函数碰到return立即返回结束
#     print("吃饭")
# func()

函数当中的变量
全局变量:作用当前变量下面的所有
局部变量:自会生效与当前的函数内


global:声明变量 --声明局部变量为全部变量
# num = 300 #全局变量在函数外进行定义--它的作用当前语句下面的全部代码
# def func():
#     global num #声明当前局部变量为全局变量
#     num = 100 #局部变量,在函数体部当中
#     print(num)
# func()
# def func1():
#     print(num)
# func1()
登录银行系统,并显示余额
# def func():
#     a = input("输入的账号")
#     if a == "666":
#         print("账号正确")
#         c = input("输入密码")
#         if c == "123456":
#             return "登录成功"
#         else:
#             print("密码错误")
#     else:
#         print("账号错误")
#         return "登录失败"
# # func()
# def func2():
#     if func() == "登录成功":
#         print("余额:100000000")
# func2()




可变长元组:当你不确定你传的实际参数的个数时候,可以使用可变长元组来接收值  *
# def f(*values):
#     print(values)
#     print(type(values))#
# f("无铭洲","在厕所","大喊奥力给")

可变长字典:1,传入两个 ** 2,传入的两个字典如果有重复的键(key)会报错
# dict1 = {"无铭洲":"在厕所"}
# dict2 = {"大喊":"干了,兄弟们"}
# def func(**dict):
#     print(dict)
# #第一种方法
# func(**dict1,**dict2)
# #第二种方法
# func(name = "无铭洲",age = "18")
# #第三种方法
# func(**{"无铭洲":"在厕所","大喊":"干了,兄弟们"})



format()也是用于格式化输出:
# str1 = "无铭洲66"
# print("{}".format(str1))
# print("{}".format("武汉八期"))
# print("name{} age{} where{} action{}".format("无铭洲","18","在网吧","打游戏"))
# list 输出方法
# list1 = [1,2,3,4,5,6]
# list2 = ["ss","aa"]
# print("{}{}{}".format(list1[1],list1[2],list1[3]))
# # 0代表你的list1 1代表list2
# print("{0[1]} {1[1]}".format(list1,list2))
# 参数名称输出
# print("姓名{name} 年龄{age}学测试".format(name = "无铭洲",age = "18"))
# format输出字典
# dict1 = {"湖南":"长沙","湖北":"武汉"}
# #字典通过键取值
# print("城市1{湖南} 城市2{湖北}".format(**dict1))



zip 函数,他是一个打包函数,返回的的是一个多维数组
两个list当中有对应的值才可以进行打包
# list1 = ["武汉","长沙","南昌"]
# list2 = ["湖北","湖南"]
# list3 = list(zip(list1,list2))
# print(list3)
# #一般工作场景当中都是打包完成之后转换成dict字典
# list3 = dict(list3)
# print(list3)
open 函数:打开一个文本具有特殊意义的
\n  \t 这个字符在python当中是
# 文件地址A:防止转译
# 第一张方法:在路径前面加r
# 第二种方法:反斜杠
# 第三种犯法:双斜杠反斜杠
# a = open(r"C:\Users\szyc\PycharmProjects\wuhan8\venv\demo\wu",mode="r",encoding="utf-8")
# mode = r 表示有读的权限
# print(a.read())  #显示全部内容
# print(a.readline())   #只显示第一行内容
# print(a.readlines())    #返回的所有数据都会存放在一个list当中
# a = open(r"C:\Users\szyc\PycharmProjects\wuhan8\venv\demo\wu",mode="w",encoding="utf-8")
# mode = w 表示有写的权限
# a.write("你好")  #它会把原有的数据覆盖掉
# a.writelines("hello") #它会把原有的数据覆盖掉
# mode = a 表示在原有的基础上进行追加内容
# a = open(r"C:\Users\szyc\PycharmProjects\wuhan8\venv\demo\wu",mode="a",encoding="utf-8")
# a.write("无铭洲") #在原有的基础上进行追加内容
# a.writelines("无铭洲")
# a.close()
# with open 可以手动关闭文件 close  as 取别名
# with open(r"C:\Users\szyc\PycharmProjects\wuhan8\venv\demo\wu",mode="r",encoding="utf-8") as a:
    # a.write("你好多次师")
    # print(a.read())

分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册