python 函数基础介绍
程序员文章站
2022-04-27 16:43:26
1.什么是函数? 为什么要使用函数?函数是组织好的,可重复使用的,用来是现实单一功能或关联功能的代码段。使用函数可以使代码更简洁,一次定义重复使用。2.函数的文档说明有什么用?用什么方式实现函数文档,如何查看函数文档。为函数提供说明,函数文档写在函数头部,使用help查看def name(): "I like python." return namehelp(name)Help on function name in module __main__:name() I...
1.什么是函数? 为什么要使用函数?
函数是组织好的,可重复使用的,用来是现实单一功能或关联功能的代码段。使用函数可以使代码更简洁,一次定义重复使用。
2.函数的文档说明有什么用?用什么方式实现函数文档,如何查看函数文档。
为函数提供说明,函数文档写在函数头部,使用help查看
def name():
"I like python."
return name
help(name)
Help on function name in module __main__:
name()
I like python.
3.写一个函数,计算任意两个数字之和并返回。
def sum(a,b):
return a+b;
c=sum(5,3)
print(c)
8
4、什么是函数的嵌套调用,写一个简单的函数嵌套调用用法。
在函数里面调用函数
def functionA():
print('----A----')
print('This is functionA')
print('----A----')
def functionB():
print('----B----')
functionA()
print('----B----')
functionB()
----B----
----A----
This is functionA
----A----
----B----
5、如果函数有返回值,用什么方式返回,如果返回多个值,最终返回的结果数据类型是什么。
使用return语句返回,使用一个结果来接收多个返回值,该结果的类型是元组。
6、函数的参数默认传参方式是什么。形参和实参的区别。
默认方式functionA(a),形参是函数定义时的参数,没有具体的值,相当与变量。实参是实际意义上的参数,可以是字符串或者数字。
7、写一个函数接收一个字符串,返回字符串的长度。
def relength(a):
b=len(a)
return b
print("该字符串的长度为:",relength("djasidj"))
该字符串的长度为: 7
8、写一个函数,接收不定长参数,并以列表的形式将所有参数返回。
def split_date(date_):
"""对日期进行切割"""
return date_.split("-")
def runnian(year):
"""
判断是否是闰年
:param year: 年份
:return: 2非法日期, 1 是闰年,0不是闰年
"""
if not year or not year.isdigit():
return 2
if (int(year) % 4 == 0 and int(year) % 100 != 0) or int(year) % 400 == 0:
return 1
else:
return 0
def month(m):
"""
判断月份是否有效
:param m: 月份
:return: False 非法月份,True 正确月份
"""
if 1 <= int(m) <= 12:
return True
else:
return False
def day(y, m, d):
"""
判断日期是否正确
:return:
"""
# 普通年的日期,闰年2月29日
days = [0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
if not month(m):
return False
if runnian(y) == 2:
return False
if runnian(y) == 1:
# 闰年
if int(m) == 2:
if 1 <= int(d) <= 29:
return True
else:
return False
if 1 <= int(d) <= days[int(m)]:
return True
else:
return False
if __name__ == '__main__':
date = input("请输入一个日期格式如:(2018-3-19):")
y, m, d = split_date(date)
result = day(y, m, d)
if result:
print("%s是有效日期" % date)
else:
print("%s非法日期" % date)
请输入一个日期格式如:(2018-3-19):2018-3-19
2018-3-19是有效日期
9 、 判断有效日期
#1、封装不同函数判断年月日是否正确(至少有闰年判断,月份判断,日期判断几个函数)
#2、要求用户输入一个日期2017-11-30格式,判断这个日期是否有效
def year(y):
if y%4==0 and y%100!=0 and y%400==0:
print("该年份为闰年")
else:
print("该年份不是闰年")
def month(m):
if m<1 or m>12:
print("月份必须在1-12之间")
else:
print("月份输入正确")
def day(d):
if d<1 or d>31:
print("日期必须在1-31之间")
else:
print("日期输入正确")
def q9():
date=input('请输入日期:')
date=f'{date}'
y=int(date[0:4])
m=int(date[5:7])
d=int(date[8:10])
year(y)
month(m)
day(d)
10、写一个函数,从键盘接接收(2020-7-16)格式的任意年月日,计算出这是这一年的第几天
def is_leap_year(year): # 判断闰年,是则返回True,否则返回False
if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:
return True
else:
return False
def function1(year, month, day): #
# 闰年每月的日期
leap_year = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
# 平年每月的日期
no_leap_year = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
# 判断月份是否合法
if month <= 0 or month > 12:
return '月份非法'
if is_leap_year(year):
# 闰年
sum = 0
for i in range(month - 1):
sum += leap_year[i]
# 判断月份是否合法
if day < 0 or day > leap_year[i+1]:
return '日期非法'
sum += day
else:
# 平年
sum = 0
for i in range(month - 1):
# 判断月份是否合法
if day < 0 or day > no_leap_year[i+1]:
return '日期非法'
sum += no_leap_year[i]
sum += day
return sum
def main():
date = input("请输入一个日期:")
year,month,day = date.split("-")
print(function1(int(year), int(month), int(day)))
main()
请输入一个日期:2020-12-02
337
本文地址:https://blog.csdn.net/Opithecus/article/details/107485039
上一篇: php封装一个生成图像验证码
下一篇: 推荐收藏 常见7类微博营销策略