Day09

函数的初始

函数:函数是以功能为导向,一个函数封装一个功能。登录,注册,文件的改的操作。。。

函数减少代码的重复性,增强了代码的可读性;

获取任意一个字符串的元素的个数

s1 = "xiaomingxiaohongxiaogang"

count = 0

for i in s1:

count += 1

print(count)

获取列表的元素个数

lst1 = [1, 2, 3]

count = 0

for i in lst1:

count += 1

print(count)

面向过程编程:

1.代码重复;

2.代码可读性不高;

初始函数

lst1 = [1, 2, 3]

def new_len():

count = 0

for i in lst1:

count += 1

print(count)

new_len()

函数的结构

lst1 = [1, 2, 3]

def new_len():

count = 0

for i in lst1:

count += 1

print(count)

new_len()

def 关键字: 定义一个函数。紧跟一个空格.

new_len 函数名: 与变量名规范一直。一定要具有可描述性;

() 结构需要,传参使用;

:分割符;

缩进 函数体;

函数的调用

lst1 = [1, 2, 3]

def new_len():

count = 0

for i in lst1:

count += 1

print(count)

new_len() # 函数名() 函数的执行者,调用者;

new_len()

new_len()

函数的执行写多少次,执行多少次;

for i in range(3):

new_len()

函数的返回值 return

一个函数就是封装一个功能,这个功能一般都会有一个最终结果的;比如写一个登陆函数,最后登陆成功与否需要返回一个结果。

函数的返回值用return表示;

return 第一个作用:直接结束函数;

return 第二个作用:给函数的执行者返回具体的值;

函数中没有return或者只写一个return,函数的执行者得到的是None;

函数中return后面是单个值,函数的执行者得到的是这个值(不改变值的类型);

函数中return后面是多个值,函数的执行者得到的是一个元组;

def new_len():

print(111)

print(222)

return

print(333)

print(444)

new_len()

li = [1, 2, 3]

def new_len():

count = 0

for i in li:

count += 1

return count

print(new_len())

def func():

print(111)

# return 100 # 100

# return [1, 2, 3] # [1, 2, 3]

return {'name': 'xiaoming'} # {'name': 'xiaoming'}

ret = func()

print(ret, type(ret))

def func():

print(111)

return 1, '啊', [22, 33] # (1, '啊', [22, 33])

ret = func()

print(ret, type(ret))

def func():

print(111)

# return 1+1+2

return 2 > 1 # True

ret = func()

print(ret, type(ret))

函数的传参

函数的传参:函数的扩展性;

def new_len(a): # 定义函数时:参数:形参。

count = 0

for i in a:

count += 1

return count

l1 = [1, 2, 3]

s1 = 'abcdefghikj'

print(new_len(l1)) # 函数的调用者:参数 实参。

print(new_len(s1)) # 函数的调用者:参数 实参。

print(len(s1)

python函数增强代码可读性_写Python必须知道的这几个代码技巧!你会吗?相关推荐

  1. python函数的组成要素_写好一个Python函数的六要素

    Python 虽然好用,但用好真的很难.尤其是函数部分,只要写不好,后面的一连串人都会遭殃.看又看不懂,测试起来也麻烦,维护又维护不动,真是让人头疼. 那怎么写好一个 Python 函数呢?<W ...

  2. python函数赋值给对象_【Python核心编程笔记】一、Python中一切皆对象

    Python中一切皆对象本章节首先对比静态语言以及动态语言,然后介绍 python 中最底层也是面向对象最重要的几个概念-object.type和class之间的关系,以此来引出在python如何做到 ...

  3. python如何提高程序可读性_提高Python的可读性?

    我最近一直很喜欢 Python编程.我来自对C语言编码的强烈热爱的背景,其中一切都可能比它应该更复杂(但至少把头发放在胸前).因此,从C转换到Python以获得不需要大量速度的更复杂的事情,这对于编写 ...

  4. python函数大全书籍京东_用python爬取京东图书排行榜并进行数据整合

    经常在京东买书,突发奇想,向看看京东畅销图书有哪些,于是,就有有了下面的代码. python版本:3.5 编辑器:jupyter 首页链接:http://book.jd.com/booktop/0-0 ...

  5. python函数返回元组平均数_关于python:使用函数中的单个项返回元组

    刚刚在python中发现了这一点奇怪之处,我想我会在这里把它作为一个问题写下来,以防其他人试图用我以前的搜索词来寻找答案. 看起来tuple解包使它成为这样,所以如果您希望遍历返回值,就不能返回长度为 ...

  6. python函数注释 参数 省略号_解决python 输出是省略号的问题

    这个问题非常非常重要,搞了一晚上都没解决好,但是真的很简单很简单, 如果你也 是用的numpy array, 如果你也想得到输出矩阵的全部内容,而不是省略形式, [[ 0.10284943 0.095 ...

  7. python 函数嵌套 报错_《Python》 函数嵌套、闭包和迭代器

    一.函数的嵌套: 1.函数的嵌套调用 defmax2(x,y): m= x if x>y elseyreturnmdefmax4(a,b,c,d): res1=max2(a,b) res2=ma ...

  8. python登录界面源码_基于Python的自媒体小助手---登录页面的实现代码

    核心技术:Python3.7 GUI技术:Tkinter (Python已经内置) 好多文章写Python GUI之tkinter窗口视窗教程大集合(看这篇就够了) 我看了N遍也没够好多东西都没有就基 ...

  9. 代写python期末作业价格_代写program留学生作业、代做Python程序语言作业、代写Python课程设计作业...

    代写program留学生作业.代做Python程序语言作业.代写Python课程设计作业 日期:2019-11-29 12:55 Completing the Final Project - Pyth ...

最新文章

  1. python解释器哪一年_Python即Python解释器的发展史
  2. Thread.setDefaultUncaughtExceptionHandler作用
  3. 做java技术天花板在哪里?我突然发现影响你晋升的竟然不是技术!
  4. jedis常用API
  5. sklearn自学指南(part19)--LDA和QDA
  6. linux ip addr peer,CentOS 7 设置网络IP地址
  7. ReactJS入门学习一
  8. JavaScript中的(字符串,数字型,布尔型)是如何实现类型转换的?
  9. 几种 vue的数据交互形式
  10. opencv-python版本问题
  11. 使用eclipse时出现cannot access compilation unit的解决方法
  12. 有没有能排列待办事项无广告的Windows版便签软件推荐
  13. hadoop学习之----------IntelliJ IDEA上实现MapReduce中最简单的单词统计的程序(本地 和 hadoop 两种实现方式)...
  14. VtkCamera总结
  15. 【2021年蓝桥杯Java-B组国赛题解】
  16. 如何将邮箱里一封邮件添加到附件中进行发送
  17. 时间转换数字与日期互转
  18. corosync+pacemaker高可用
  19. Unity脚本(二)
  20. 联想拯救者r9000p原装海力士固态4k64位读写慢的解决

热门文章

  1. 清华大学计算机系男女,【清华大学男女比例】2016清华大学各院系男女比例
  2. 星来客机器人餐厅_在50米高空聚餐,在铁窗内吃饭,盘点全球特色餐厅,看看有多奇葩...
  3. gearman mysql持久化_gearman + mysql方式实现持久化操作示例
  4. 82. 删除排序链表中的重复元素 II(链表操作)
  5. Java中BigInteger的各种方法详解
  6. mysql 之后_MYSQL登陆完之后如何操作???(新手求助)
  7. Java show两个整数加减_怎么样用java编写界面实现两个数的加法运算
  8. FoveaBox 超越anchor based检测框架
  9. 老板的表弟数不清(转)
  10. 机器学习数据倾斜的解决方法_机器学习并不总是解决数据问题的方法