Python之第九天的努力--函数(1)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Python之第九天的努力--函数(1),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含5256字,纯文字阅读大概需要8分钟。
内容图文
![Python之第九天的努力--函数(1)](/upload/InfoBanner/zyjiaocheng/1220/9c387b66e8b24c4dbf80032327afd73e.jpg)
01 练习
# 19.用户输入一个数字,判断一个数是否是水仙花数。
#
# 水仙花数是一个三位数, 三位数的每一位的三次方的和还等于这个数. 那这个数就是一个水仙花数,
#
# 例如: 153 =1**3 + 5**3 + 3**3
# num = input(‘请输入一个数字:‘)
# result = 0
# if num.isdecimal():
# for i in num:
# i = int(i)
# result += i**3
# if result == int(num):
# print(‘您输入的是水仙花数‘)
# else:
# print(‘您输入的不是水仙花数‘)
# else:
# print(‘您输入的不是数字‘)
# 20.把列表中所有姓周的?的信息删掉(此题有坑, 请慎重):
#
lst = [‘周??‘, ‘周星星‘, ‘麻花藤‘, ‘周扒?‘]
#
# 结果: lst = [‘麻花藤‘]
# new_list = []
# for i in lst:
# if i[0] == ‘周‘:
# continue
# new_list.append(i)
# lst = new_list
# print(lst)
# for i in range(len(lst)-1,-1,-1):
# if lst[i].strip()[0] == ‘周‘:
# lst.pop(i)
# print(lst)
# 21.车牌区域划分, 现给出以下车牌. 根据车牌的信息, 分析出各省的车牌持有量. (选做题)
#
cars = [‘鲁A32444‘,‘鲁B12333‘,‘京B8989M‘,‘?C49678‘,‘?C46555‘,‘沪 B25041‘]
# #
locals = {‘沪‘:‘上海‘, ‘?‘:‘??江‘, ‘鲁‘:‘?东‘, ‘鄂‘:‘湖北‘, ‘湘‘:‘湖南‘,‘京‘:‘北京‘}
# #
# # 结果: {‘??江‘:2, ‘?东‘: 1, ‘北京‘: 1}
# 在循环中给字典添加键值对
# 没有键,就创建一个键
dic = {}
for i in cars:
if locals[i[0]] in dic:
dic[locals[i[0]]] += 1
else:
dic[locals[i[0]]] = 1
print(dic)
# 文件a.txt内容:每一行内容分别为商品名字,价钱,个数。
# apple 10 3
# tesla 100000 1
# mac 3000 2
# lenovo 30000 3
# chicken 10 3
# 通过代码,将其构建成这种数据类型:
# [{‘name‘:‘apple‘,‘price‘:10,‘amount‘:3},{‘name‘:‘tesla‘,‘price‘:1000000,‘amount‘:1}......]
# 并计算出总价钱。
# l1 = []
# with open(‘a‘,encoding=‘utf-8‘) as f1:
# for line in f1:
# dic = {}
# line = line.strip()
# # print(line)
# line_list = line.split()
# # print(line_list)
#
# # dic[‘name‘] = line_list[0]
# # dic[‘price‘] = int(line_list[1])
# # dic[‘amount‘] = int(line_list[2])
# dic = {‘name‘:line_list[0],‘price‘:int(line_list[1]),‘amount‘:int(line_list[2])}
#
# # print(dic)
# l1.append(dic)
# print(l1)
# 如果数据列数增加了
l1 = []
name_list = [‘name‘,‘prise‘,‘amount‘] # 增加列在这里加就可以了
with open(‘a‘,encoding=‘utf-8‘) as f1:
for line in f1:
line_list = line.strip().split()
# print(line_list)
dic = {}
for index in range(len(name_list)):
dic[name_list[index]] = line_list[index]
l1.append(dic)
print(l1)
02 内容回顾
-
文件操作
三部曲:
- 打开文件open()
- 操作文件(对文件句柄进行操作)
- 关闭文件
- 文件路径path,编码方式:encoding,mode
-
读,写,追加
- 读 r,rb,r+,r+b
- read()
- read(n):
- r:read(n) n是字符
- rb:read(n) n是字节
- readline() str
- readlines() list [‘每一行\n‘,‘第二行\n‘,]
- for 循环 对文件句柄。
- 写 w,wb,w+,w+b
- w:没有文件创建新文件,写入内容
- w:有文件,先清空,在写入新内容。
- 追加 a,ab,a+,a+b
- a:没有文件创建新文件,写入内容
- a:有文件,追加新内容。
- 读 r,rb,r+,r+b
-
r+:先读后写
-
其他功能:tell() seek() flush()
-
with open() as f1:
-
文件的改的操作
03 函数
-
函数的初识:
# 函数性编程 # s1 = ‘fjfksjdkjksfdsjk‘ # l1 = [1,2,3,4,5,6] # def my_len(s): # count = 0 # for i in s: # count += 1 # print(count) # my_len(s1) # my_len(l1) # 函数:以功能(完成一件事)为导向 一个函数一个功能 # 随调随用 # 减少代码的重复性 # 增强代码的可读性
-
函数的结构与调用
def douyin(): print(‘打开抖音‘) print(‘下滑‘) print(‘看视频‘) print(‘点赞‘) print(‘娱乐‘) ‘‘‘ 结构:def 关键字,定义函数。 douyin 函数名:与变量设置相同,具有可描述性。 函数体:缩进。函数中尽量不要出现print ‘‘‘ # 函数什么时候执行 # 当函数遇到 函数名() 函数才会执行 douyin()
-
函数的返回值
# 函数的返回值 # s1 = ‘sjfhwhfeufjsb‘ # print(len(s1)) # def douyin(): # print(‘打开抖音‘) # print(‘下滑‘) # return # print(‘看视频‘) # print(‘点赞‘) # print(‘娱乐‘) # douyin() # return:在函数中遇到return直接结束函数。 # def douyin(): # print(‘打开抖音‘) # print(‘下滑‘) # print(‘看视频‘) # print(‘点赞‘) # print(‘娱乐‘) # return ‘哈哈哈哈哈‘ # # ret = douyin() # print(ret) # # return 将数据返回给函数的执行者,调用者 def douyin(): print(‘打开抖音‘) print(‘下滑‘) print(‘看视频‘) print(‘点赞‘) print(‘娱乐‘) return ‘哈哈哈哈哈‘,6666,[857,857] ret1,ret2,ret3 = douyin() print(ret1,ret2,ret3) # return 返回多个元素 是以元组的形式返回给函数的执行者 ‘‘‘ return总结: 1.在函数中,终止函数 2.return 可以给函数的执行者返回值: 1.return单个值 单个值 1.return多个值 (多个值,) ‘‘‘
-
函数的参数
# 实参角度: # 1.位置参数:从左至右,一一对应。 # def douyin(form,place): # 函数的定义:接收的参数 形式参数 # print(‘打开抖音‘) # print(‘进行筛选:类别:%s,地区:%s‘%(form,place)) # print(‘下滑‘) # print(‘看视频‘) # print(‘点赞‘) # print(‘娱乐‘) # douyin(‘吃‘,‘山东‘) # 函数的执行传的参数:实际参数 # 写一个函数,只接受两个int的参数,函数的功能是将较大的数返回 # def compare(num1,num2): # if num1 > num2: # return num1 # else: # return num2 # print(compare(1000,20)) # 三元运算符: 简单的if else # a = 10 # b = 20 # c = a if a > b else b # print(c) # def compare(num1,num2): # # max_num = 0 # # max_num = num1 if num1 > num2 else num2 # # return max_num # # return num1 if num1 > num2 else num2 # # print(compare(1000,20)) # 2.关键字参数 # 一一对应,不要求顺序 # def douyin(form,place): # print(‘打开抖音‘) # print(‘进行筛选:类别:%s,地区:%s‘%(form,place)) # print(‘下滑‘) # print(‘看视频‘) # print(‘点赞‘) # print(‘娱乐‘) # douyin(form=‘吃‘,place=‘山东‘) # 函数:传入两个字符串参数,将两个参数拼接完成后形成的结果返回 # def func(a,b): # return a + b # print(func(b=‘你‘,a=‘牛批‘)) # 混合参数 # def douyin(form,place,time): # print(‘打开抖音‘) # print(‘进行筛选:类别:%s,地区:%s,时间:%s‘%(form,place,time)) # print(‘下滑‘) # print(‘看视频‘) # print(‘点赞‘) # print(‘娱乐‘) # return ‘地区:%s 时间:%s‘%(place,time) # print(douyin(‘吃‘,‘山东‘,time=‘15s‘)) ‘‘‘ 实参角度: 1.位置参数 按照顺序,一一对应 2.关键字参数,一一对应 3.混合参数:位置参数一定要在关键字参数的前面。 ‘‘‘
# 形参角度 # 1.位置参数 与实参角度的位置参数是一种 # 写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。 # def func(l): # # if len(l) > 2: # # return l[:2] # # else: # # return l # # return l[:2] if len(l) > 2 else l # # print(func([1,2,3,4])) # [1, 2] # print(func([1])) # [1] # def func(l): # return l[:2] # print(func([1,2,3,4,])) # print(func([1])) # 2.默认参数 # 默认参数设置的意义:普遍经常使用的。 # def douyin(form,place=‘山东‘,time=‘15s‘): ### # print(‘打开抖音‘) # print(‘进行筛选:类别:%s,地区:%s,时间:%s‘%(form,place,time)) # print(‘下滑‘) # print(‘看视频‘) # print(‘点赞‘) # print(‘娱乐‘) # return ‘地区:%s 时间:%s‘%(place,time) # print(douyin(‘吃‘)) ‘‘‘ 形参角度: 1.位置参数 2.默认参数:经常使用的 ‘‘‘
原文:https://www.cnblogs.com/szheng/p/13080488.html
内容总结
以上是互联网集市为您收集整理的Python之第九天的努力--函数(1)全部内容,希望文章能够帮你解决Python之第九天的努力--函数(1)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。