百万年薪python之路 -- 函数初始练习
1.整理函数相关知识点
2.写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者。
def func(lst):
lst = lst[1::2]
return lst
传列表
lst = [1,2,3,4,5,6,7,8,9]
f = func(lst)
print(f)
传元组
tu = (1,2,3,4,5,6,7,8,9)
f = func(tu)
print(f)
3.写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5。
def my_len(s):
count = 0
for i in s:
count += 1
return count
s = "dasd"
lst = [1,2,3,4]
tu = ("ada",1,'sda')
a = my_len(s)
b = my_len(lst)
c = my_len(tu)
print(a)
print(b)
print(c)
4.写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
def check(lst):
if len(lst) > 2:
lst = lst[:2]
return lst
lst = [1,2,3,4]
a = check(lst)
print(a)
5.写函数,计算传入函数的字符串中,[数字]、[字母] 以及 [其他]的个数,并返回结果。
def num(s):
int_count = 0
alpha_count = 0
qt_count = 0
for i in s:
if i.isdecimal():
int_count += 1
elif i.isalpha():
alpha_count += 1
else:
qt_count += 1
return int_count,alpha_count,qt_count
s = "1564dasihd,;',.在"
a,b,c = num(s)
print(f"数字{a}个,字母{b}个,其他{c}个")
6.写函数,接收两个数字参数,返回比较大的那个数字。
def max(a,b):
if a > b:
pass
else:
a,b =b,a
return a
print(max(456,1223))
7.写函数,检查传入字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
dic = {"k1": "v1v1", "k2": [11,22,33,44]}
PS:字典中的value只能是字符串或列表
def check(dic):
for k in dic.keys():
if len(dic[k]) > 2:
dic[k] = dic[k][0:2]
return dic
dic = {"k1": "v1v1", "k2": [11,22,33,44]}
print(check(dic))
8.写函数,此函数只接收一个参数这个参数必须是列表数据类型,此函数完成的功能是返回给调用者一个字典,此字典的键值对为列表的索引及对应的元素。例如传入的列表为:[11,22,33] 返回的字典为 {0:11,1:22,2:33}。
def list_dict(lst):
if type(lst) == list:
dic = {}
count = 0
for i in lst:
dic[count] = i
count += 1
else:
dic = "这不是列表"
return dic
lst = [11,22,33]
print(list_dict(lst))
9.写函数,函数接收四个参数分别是:姓名,性别,年龄,学历。用户通过输入这四个内容,然后将这四个内容传入到函数中,此函数接收到这四个内容,将内容追加到一个student_msg文件中。
def func(name,sex,age,xl):
with open("student_msg","a",encoding="UTF-8") as f:
f.write(name+" "+sex+" "+age+" "+xl+"\n")
name = input("请输入姓名:")
sex = input("请输入性别:")
age = input("请输入年龄:")
xl = input("请输入学历:")
func(name,sex,age,xl)
10.对第9题升级:支持用户持续输入,Q或者q退出,性别默认为男,如果遇到女学生,则把性别输入女。
def func(name,age,xl,sex="男"):
with open("student_msg","a",encoding="UTF-8") as f:
f.write(name+" "+sex+" "+age+" "+xl+"\n")
while 1:
name = input("请输入姓名(退出请按q/Q):")
if name.upper() == "Q":
break
sex = input("请输入性别:")
age = input("请输入年龄:")
xl = input("请输入学历:")
if not sex.strip():
func(name,age,xl)
else:
func(name,age,xl,sex)
百万年薪python之路 -- 函数初始练习的更多相关文章
- 百万年薪python之路 -- 函数初始
1.函数 1.1 认识函数 定义一个事情或者是功能,等到需要的时候直接去用就好了.那么这里定义东西就是一个函数 函数:对代码块和功能的封装和定义 函数的好处: 减少代码的重复性 代码可读性高 将功能进 ...
- 百万年薪python之路 -- 数据库初始
一. 数据库初始 1. 为什么要有数据库? 先来一个场景: 假设现在你已经是某大型互联网公司的高级程序员,让你写一个火车票购票系统,来hold住十一期间全国的购票需求,你怎么写? 由于在同一时 ...
- 百万年薪python之路 -- 面向对象初始
面向对象初始 1.1 面向过程编程vs函数式编程 函数编程较之面向过程编程最明显的两个特点: 1,减少代码的重用性. 2,增强代码的可读性. 1.2 函数式编程vs面向对象编程 面向对象编程:是一类相 ...
- 百万年薪python之路 -- 函数的动态参数
1.函数的动态参数 1.1 动态接收位置参数 在参数位置用*表示接受任意参数 def eat(*args): print('我想吃',args) eat('蒸羊羔','蒸熊掌','蒸鹿尾儿','烧花鸭 ...
- 百万年薪python之路 -- 函数名的第一类对象及使用
函数名是一个变量, 但它是一个特殊的变量, 与括号配合可以执行函数的变量 1.1.函数名的内存地址 def func(): print("呵呵") print(func) 结果: ...
- 百万年薪python之路 -- 函数的动态参数练习
1.继续整理函数相关知识点. 2.写函数,接收n个数字,求这些参数数字的和.(动态传参) def func(*args,**kwargs): num_sum = 0 num_dic = [] num ...
- 百万年薪python之路 -- 生成器
1.生成器 #本质就是迭代器 1.1 生成器的构建方式 在python中有三种方式来创建生成器: 1.通过生成器函数 2.通过生成器推导式 3.python内置函数或者模块提供 1.2 生 ...
- 百万年薪python之路 -- 内置函数二 -- 最常用的内置函数
1.内置函数 1.1 匿名函数 匿名函数,顾名思义就是没有名字的函数(其实是有名字的,就叫lambda),那么什么函数没有名字呢?这个就是我们以后面试或者工作中经常用匿名函数 lambda,也叫一句话 ...
- 百万年薪python之路 -- 内置函数练习
1.整理今天笔记,课上代码最少敲3遍. 2.用列表推导式做下列小题 过滤掉长度小于3的字符串列表,并将剩下的转换成大写字母 lst = [["a","b"],[ ...
随机推荐
- JS中如何防止表单重复提交问题
在登录页面html中写如下代码 <script type="text/javascript"> var issubmit=false; function dosubmi ...
- redirectTo、navigateTo与switchTap区别
老是记忆不大清楚,简单写一下 简单作区分就是: redirectTo:关闭当前页(卸载),跳转到指定页 navigateTo:保留当前页(隐藏),跳转到指定页 switchTap:只能用于跳转到tab ...
- Spring MVC-从零开始-文件上传(未完待续)
Spring MVC-从零开始-文件上传(未完待续)
- append追加的html片段,添加点击事件没有反应,解决!
对于追加的元素来说,属于未来展现的内容,我们此时不能使用一般点击事情处理,需要用未来事件绑定. 例如:我点击车牌号显示车辆详情,如下绑定. //绑定未来元素 $("body").d ...
- yzoj P2371 爬山 题解
背景 其实 Kano 曾经到过由乃⼭,当然这名字⼀看⼭主就是 Yuno 嘛.当年 Kano 看见了由乃⼭,内⼼突然涌出了⼀股杜甫会当凌绝顶,⼀览众⼭⼩的 豪⽓,于是毅然决定登⼭.但是 Kano 总是习 ...
- Centos6 日常使用小结
网络配置目录 1./etc/sysconfig/network-script/ifcfg-eth0 2.netstat -rn Kernel IP routing table Destination ...
- Spark 学习笔记之 Standalone与Yarn启动和运行时间测试
Standalone与Yarn启动和运行时间测试: 写一个简单的wordcount: 打包上传运行: Standalone启动: 运行时间: Yarn启动: 运行时间: 测试结果: Standalon ...
- Java 从入门到进阶之路(七)
在之前的文章中我们介绍了一下 java 中的对象和类,接下来我们来看一下 Java 中的方法重载. 在显示生活中,我们肯定会遇到这样一个问题,那就是我们再商场买东西的时候在付账时的选择.如下 A:在收 ...
- RMAN详细教程(二):备份、检查、维护、恢复
RMAN详细教程(一):基本命令代码 一.创建增量备份 增量备份级别为0-4,但为方便备份管理,oracle建议只限于0级和1级. 1.差异增量备份(differential incremental ...
- 一篇文章教会你jQuery应用
一 认识jQuery jQuery是JavaScript Query的缩写形式.jQuery是一款非常优秀的JavaScript库,即便是MVVM框架盛行的今天,也有超过半数的网页及应用直接或间接的使 ...