当前位置: 首页 > news >正文

python日记----2017.7.25

一丶函数

1.函数的定义
def是关键字 define
def 之后加函数名
函数名
必须由字母下划线数字组成,不能是关键字,不能是数字开头
函数名还是要有一定的意义能够简单说明函数的功能
():必须写
函数的调用:函数名+括号
2.返回值
函数的返回值为None有三种情况
1.不写返回值
2.只写一个return
3.return None (几乎不用)
return的作用:结束一个函数的执行
首先 返回值可以是任意的数据类型
如果有返回值:必须要用变量接收才会有效果
函数的返回值不为None,有返回值
return xxx 返回一个值(一个变量)
return a,b 返回多个值(多个变量),多个值之间用逗号区分
接收:可以用一个变量接收,以元组的形式返回
也可以用多个变量接收,返回几个就用几个变量去接收

函数要先定义 后 调用
3.参数
实参和形参
实参:函数调用的时候传入的参数值
形参:是函数定义的时候定义的参数名
参数可以是任意的数据类型
可以传递0个或多个参数
位置参数:按顺序定义参数
默认参数:首先,不要设置可变数据类型的默认参数
对于变化小的参数可以设置默认参数
默认参数可以不传,不传的时候用的就是默认值
如果传,会覆盖默认值
默认的值是在定义函数的时候就已经确定了的
调用函数时传参数:
按照位置传参
按照关键字传参
动态参数
*arge:返回一个元组
**kwarge:返回一个字典

二丶作业

1、整理函数相关知识点,画思维导图



 



2、写函数,计算传入字符串中【数字】、【字母】、【空格】 以及 【其他】的个数

def count_1(list_1):
list_1 =list(list_1)
T = {}
L =[0,0,0,0]
for i in list_1:
if i.isdigit():
L[0]+=1
T.setdefault('数字',[]).append(i)
elif i.isalpha():
L[1]+=1
T.setdefault('字母',[]).append(i)
elif i.isspace():
L[2] += 1
T.setdefault('空格',[]).append(i)
else:
L[3] += 1
T.setdefault('其他',[]).append(i)
a = '数字:%s,字母%s,空格%s,其他%s,\n'%(L[0],L[1],L[2],L[3])
print(a)
return T
print(count_1('Aa1 23*************'))

3、写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5。
def my_len(a):
length = 0
for i in a:
length += 1

if length > 5:
print(a,'的长度大于5 ')
else:
print(a ,'的长度小于5')
return a,'的长度为%s'%length
my_len([1,2,3,4,5,6])



4、写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
def my_len(a):
length = 0
for i in a:
length += 1

if length > 2:
print(a[0:2])
else:
print(a ,'的长度小于5')
my_len([1,23,4,5,6,])


5、写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者。
def func(test):
L=[]
for i in range(len(test)):
if i %2 ==0:
continue
else:
L.append(test[i])
return L
print(func(['a','b']))

转载于:https://www.cnblogs.com/De-Luffy/p/7236317.html

相关文章:

  • Js实现点击查看全文(类似今日头条、知乎日报效果)
  • 用quicker-worker.js轻松跑一个大数据遍历
  • HttpClient4.2 Fluent API学习
  • 第二天
  • HCNA
  • AR 与 AI 技术是如何让勇士重回王者的?
  • for循环结构break和continue的用法和区别
  • Java中的关键字
  • JSON.parse()在火狐中的BUG
  • IBM:我们不会放弃XIV存储阵列
  • 客户端数据存储----Cookie From 《高程3》
  • Hadoop2.6下安装Hive
  • Windows 10份额稳步上升 Win7继续下滑
  • 初识Rust语言的所有权概念
  • 《SEO的艺术(原书第2版)》——3.1 SEO从业者所能完成的策略性目标
  • ES6指北【2】—— 箭头函数
  • @jsonView过滤属性
  • angular2 简述
  • angular组件开发
  • codis proxy处理流程
  • input实现文字超出省略号功能
  • JavaScript设计模式与开发实践系列之策略模式
  • JavaScript中的对象个人分享
  • Java程序员幽默爆笑锦集
  • mysql中InnoDB引擎中页的概念
  • PHP变量
  • Python_OOP
  • SpriteKit 技巧之添加背景图片
  • 初探 Vue 生命周期和钩子函数
  • 基于阿里云移动推送的移动应用推送模式最佳实践
  • 码农张的Bug人生 - 见面之礼
  • 通信类
  • 网页视频流m3u8/ts视频下载
  • 为什么要用IPython/Jupyter?
  • 新手搭建网站的主要流程
  • - 转 Ext2.0 form使用实例
  • 策略 : 一文教你成为人工智能(AI)领域专家
  • ​HTTP与HTTPS:网络通信的安全卫士
  • ​Kaggle X光肺炎检测比赛第二名方案解析 | CVPR 2020 Workshop
  • # 飞书APP集成平台-数字化落地
  • #etcd#安装时出错
  • #单片机(TB6600驱动42步进电机)
  • (26)4.7 字符函数和字符串函数
  • (Matlab)使用竞争神经网络实现数据聚类
  • (pytorch进阶之路)扩散概率模型
  • (超详细)2-YOLOV5改进-添加SimAM注意力机制
  • (附源码)ssm基于jsp高校选课系统 毕业设计 291627
  • (附源码)基于SSM多源异构数据关联技术构建智能校园-计算机毕设 64366
  • (力扣)1314.矩阵区域和
  • (六)c52学习之旅-独立按键
  • (十六)一篇文章学会Java的常用API
  • (太强大了) - Linux 性能监控、测试、优化工具
  • (一)Spring Cloud 直击微服务作用、架构应用、hystrix降级
  • (一)UDP基本编程步骤
  • (译)计算距离、方位和更多经纬度之间的点