Python基本函数、传参和流程控制【简洁版】
创始人
2024-05-20 11:36:56

def 定义函数
for 遍历
while 循环
if else 条件控制

默认值传参数
可变值传参
关键字传参

import calendardef get_current_month_start_and_end(date, flag=1, message="get_current_month_start_and_end ok"):while True:if str(date).count('.') != 1:raise ValueError("Pls input parameter such as '2019.05'")  # 要求参数格式是:xxxx.xx,可自行设定,此处省去其他验证year, month = str(date).split('.')[0], str(date).split('.')[1]  # 分割字符串,提取年月end = calendar.monthrange(int(year), int(month))[1]  # 获取当前年月的当月天数start_date = '%s-%s-01' % (year, month)  # 第一天end_date = '%s-%s-%s' % (year, month, end)  # 最后一天if flag - 1 < 0:raise ValueError('error value')print(message)return start_date, end_datedef def_param_fun(kind, retries, arguments, **keywords):print("def_param_fun start:", len(arguments), kind, arguments)for index in range(len(arguments)):if kind == arguments[index]:print(" = index",index,kind,arguments[index])return Trueelse:print("!= index",index,kind, arguments[index])if retries - 1 < 0:raise ValueError('error value')print("end-", kind)return Falsedef def_param_fun2(kind, retries, *arguments, **keywords):print("def_param_fun2 start:", len(arguments), kind, arguments)for index in range(len(arguments)):if kind == arguments[index]:print(" = index",index,kind,arguments[index])return Trueelse:print("!= index",index,kind, arguments[index])if retries - 1 < 0:raise ValueError('error value')print("end-", kind)return False# main
if __name__ == '__main__':elp = ['aaa', 'bbb', 'ccc']print('遍历============')for index in range(len(elp)):print('当前 :', elp[index])stri = 'abcde'for i in stri:print(i)count=0print('循环============')while(count<3):print('一步两步')count = count +1if(count):pass # 用于那些语法上必须要有什么语句,但程序什么也不做的场合.print('默认值参数============')print(get_current_month_start_and_end("2023.01"))print(get_current_month_start_and_end("2023.01", 1))# print(get_current_month_start_and_end("2023.01", 1, "sss"))print('可变参数 ============')#   *args代表着可以传入一个list或者tuple, **args代表着可以传入一个dictdays = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']print(def_param_fun('Friday', 1, days))print(def_param_fun2('Friday', 1, days))print('关键字参数 ============')print(get_current_month_start_and_end("2023.09", message="关键字参数"))

控制台输出值

遍历============
当前 : aaa
当前 : bbb
当前 : ccc
a
b
c
d
e
循环============
一步两步
一步两步
一步两步
默认值参数============
get_current_month_start_and_end ok
(‘2023-01-01’, ‘2023-01-31’)
get_current_month_start_and_end ok
(‘2023-01-01’, ‘2023-01-31’)
可变参数 ============
def_param_fun start: 5 Friday [‘Monday’, ‘Tuesday’, ‘Wednesday’, ‘Thursday’, ‘Friday’]
!= index 0 Friday Monday
!= index 1 Friday Tuesday
!= index 2 Friday Wednesday
!= index 3 Friday Thursday
= index 4 Friday Friday
True
def_param_fun2 start: 1 Friday ([‘Monday’, ‘Tuesday’, ‘Wednesday’, ‘Thursday’, ‘Friday’],)
!= index 0 Friday [‘Monday’, ‘Tuesday’, ‘Wednesday’, ‘Thursday’, ‘Friday’]
end- Friday
False
关键字参数 ============
关键字参数
(‘2023-09-01’, ‘2023-09-30’)

Process finished with exit code 0

可变参数传参慎用

相关内容

热门资讯

切入算力租赁!“环卫第一股”拟... A股“环卫第一股”侨银股份(002973)宣布切入算力租赁赛道。9月9日晚间,公司披露,拟向供应商(...
闯杆逃费,未逃过刑罚 《法治日报》记者  胡新桥《法治日报》见习记者 答 笛□于诗祺“我原以为即使被发现,也只是补缴费用,...
46名务工“宝妈”成功追讨16... 《法治周末》记者 杨东风□靳程 刘续“厂子就在家门口,骑车十分钟就到,下午4点还能赶回去接孩子放学。...
E法周见| 厘清音乐产业AI辅... 《法治周末》记者 仇飞9月5日,在第四届浪潮音乐大赏·创作人论坛现场,一场题为“AI生成时代,原创如...
双向投资成热点,国内企业出海该...   第二十六届投洽会刚在厦门落下帷幕,"中国投资"展区的热度一点不比"投资中国"低。很多国内企业在展...