""""""
"""函数:
什么是函数?
在编程语言当中函数也称之为方法()
函数:
1、python自带的函数:也叫内建函数--- print input 等等
2、python自定义函数:程序员自己定义的函数.
python当中定义函数:def 创建函数 :
格式语法如下:
def 函数名称():
功能代码
函数可以更好的组织代码,代码的复用性更高
"""
# def function():
# """
# 函数:实现输出helloword的功能
# :return:
# """
# print("武汉20")
# print("hello word")
# 主函数调用,为了防止我不想被其他模块调用的功能
# 我不想被调用的代码被执行
# if __name__ == '__main__':
# function()
# function()
# print("你好")
# print(__name__)
"""if __name__ == '__main__':是一个if 判断语句
__name__ 是模块名称
__main__ 是条件
__name__ 是模块名称:在当前模块打印的名称是__main__,
所有条件通过,if __name__ == "_main__"被执行
注意:所有模块爱自己模块打印的名称都是使用__name__直接去打印
但是你在当中模块打印其他模块的名称,需要加上模块的路径
"""
"""
函数的调用方法
1、直接通过函数名称调用函数
2、通过主函数名称调用函数
"""
"""函数当中的参数:
def 函数名称(): () 是用来定义参数变量名称的,也叫作形式参数
"""
# def function(name,where,action):
# name= "张三"
# print("name,where,action is :",name,where,action)
#
# # 通过参数名称赋值 直接赋值
# function(name="张三",where="去武汉",action="跑步") # 调用函数的时候给形参赋值,这里传的值也叫实际参数
# function("李四","去北京","爬长城")
"""
默认参数:
"""
# def function(name = "张三",where = "去北京",action = "吃烤鸭"):
# print(name,where,action)
# function("李四","南京")
# 定义none的默认值
# def function(name= "张三",where=None,action=None):
#
# print(name,where,action)
# function()
# def function(name="张三",where,action):
# # name = "张三"
# print(name, where, action)
# function(123,where="123",action="123")
"""函数变量的使用:
1.全局变量:当前变量下的所有内容都可以直接引用
2.局部变量:只在特定的作用域下生效
3.global: 声明局部变量为全局变量
"""
#定义一个变量:
# age = 18
# def function():
# global number
# number = 1000
# #局部变量是在函数体内定义,生效的范围只是在当前的函数内生效
# print(age,number)
#
# function()
# print(number)
#
# def function(name,where,action):
# name= "张三"
# print("name,where,action is :",name,where,action)
""" 可变长参数(可变长元组):* """
# def function(name,*arge):
# print(name,arge) # (11, 22, 33, 44)
#
# function(11,22,33,44)
"""可变长字典:**
"""
# def function(*args,**kwargs):
# print(args,kwargs)
# # function(11,22,33,name= "张三",where="北京")
# function(**{'name':"张三"},**{'where':'北京'})
"""函数当中的return语句
return:函数的返回值
"""
# def function(): # fuction 有没有属性? 本身是没有属性的 #none
# print("hello word")
# return 123
# print(function())
"""需求:a 函数和 b函数,我需哟啊拿到a函数的结果,参与b函数的运算"""
#
# def a():
# number= 1000
# return (number)
# a()
# def b():
# number = a()
# number /= 2
# print(number)
# b()
"""return 返回多个结果
注意:函数当中一旦碰到return语句立即返回结果,return下面的代码
不会被执行
"""
# def func():
#
# return 1,2,3,4,5
# print("hello word")
#
# print(func())
# def func(a):
# if a ==10:
# return 'a=10'
# elif a<10:
# return 'a<10'
# else:
# return 'a>10'
# print(func(12))
"""
return:
1.函数本身的属性为None,函数的属性是由return决定的
return返回什么,当前的函数属性就是什么
2.return 语句返回的时候,后面没有写内容,返回的结果也是
none
3.return 可以返回多个结果,默认村塾的类型就是tuple类型
4.函数当中碰到return 立刻返回结果,return语句下面的内容
不会被执行。
函数:理解为一个箱子,用来装代码(也叫作封装的概念)封装之后的代码,
方便后续的代码维护,提升了代码的拓展性,也提高了代码的复用性
"""
# def func(userAc,pwd):
# username = input("请输入你的用户名:")
# if username == userAc:
# password = input("请输入你的密码:")
# if password == pwd:
# print("登陆成功")
# else:
# print("密码错误")
# else:
# print("账号错误")
# func("17671855224","liu123123")
"""需求
1.当前有一个登陆的功能
登陆:实现登陆的功能
查询余额:通过检验我当前的登陆结果,来判断是否显示余额
"""
#
# def func(userAc,pwd):
# username = input("请输入你的用户名:")
# if username == userAc:
# password = input("请输入你的密码:")
# if password == pwd:
# return "登陆成功"
# # return "五毛"
# else:
# return '登陆失败'
# else:
# return '登陆失败'
#
# def liu():
# # 获取登陆结果的返回值 登陆成功,密码错误,账号错误
# a =func("123123","123456")
# if a == "登陆成功":
# print('余额:五毛')
# elif a == "账号错误":
# print('账号错误')
# else:
# print('密码错误')
# # func("123123","123456")
# liu()
""" 格式化输出的方法:% 格式化输出结果:
format:格式化输出。
"""
# print("name:%s age:%s"%("张三",18))
# # format 输出的第一种方法
# print("name:{} age:{}".format("李四",20))
# # format输出第二种方法,索引取被传的值
# print("name:{1} age:{0}".format(20,"王五"))
#
# # format 输出第三种方法,利用索引取list里面的值
# print("name:{0[1]} age:{0[0]}".format([23,"赵六"]))
# # format第四种方法,利用键取list里面的值
# print("name:{name} age:{age}".format(**{"name":"牛七","age":"18"}))
# print("name:{name} age:{age}".format(name="容八",age=29))
""" f的格式化输出方法
"""
# li1 = ["张三",33]
# di = {"name":"牛七","age":55}
# print(f"name is:{li1[0]} age is :{li1[1]}")
# print(f"name is :{di['name']} age is: {di['age']}")
#
# name = "王五"
# age = 34
# print(f"name is:{name} age is:{age}")
# # 37.78
# def a(o):
# x = 1
# for i in range(365):
# if i % 7 in [0,6]:
# x = x * 0.99
# else:
# x = x *(1+o)
# return x
# n = 0.01
# while a(n) < 37.78:
# n +=0.001
# print(n)
"""
open():创建打开文件
mode : r(读) w (写) a(追加)
"""
# file = open("./file.txt",mode="r",encoding="utf-8")
# file = open(r"D:\setting\wuhan20\wuhan20damo\file.txt",mode='r',
# encoding='utf-8')
# print(file.read()) # 读取的是字符串类型的
# print(file.readline()) # 读取文件首行的内容
# print(file.readlines()) # 读取文件当中所有的内容存放在list当中
# file.close() # 关闭文件
"""读取文件的过程场中,不要使用多个方法读取,会导致数据不准确"""
# file = open(r"D:\setting\wuhan20\wuhan20damo\file.txt",mode='w',
# encoding='utf-8')
# file.write("武汉多测师,鼎泰关南大厦,年前预报名,享受年前价格")
# \n 也叫作转义字符:作用换行 如果想要有转义字符不生效前面加r
# file.writelines(r"武汉多测师,年前预报\n名,享受年前价格")
"""=====================追加===================="""
# file = open(r"D:\setting\wuhan20\wuhan20damo\file.txt",mode='a',
# encoding='utf-8')
# file.write("\n鼎泰关南大厦418")
# file.close()
"""===================whit open============================
不需要手动关闭文件,他会自动关闭文件
"""
# with open(r"D:\setting\wuhan20\wuhan20damo\file.txt",mode='r',
# encoding='utf-8') as file:
# print(file.read())
#
# print(file.read())
"""函数作业
1.存在一个文件,文件名test.txt
01 success
02 fail
03 fail
04 success
用python语句实现统计该文件中有多少的success多个个fail"""
# x=0
# y=0
# with open(r"D:\setting\wuhan20\wuhan20damo\test.txt",mode="r",encoding="utf-8")as test:
# a = test.readlines()
# for i in a:
# if "fail" in i:
# x += 1
# elif "success" in i:
# y += 1
# print(x,y)
|
|