【4】python函数基础
---恢复内容开始---

案例1:时间下一秒程序
#__author:"吉勇佳"
#date: 2018/10/14 0014
#function: timestr=input("请输入标准的时间,如:21:55:23----->>>:23")
timeList=timestr.split(":")
h = int(timeList[0])
m = int(timeList[1])
s = int(timeList[2]) s += 1
if s == 60:
m += 1
s=0
if m==60:
h += 1
m=0
if h == 24:
h=0 print("%.2d:%.2d:%.2d" %(h,m,s)) #输出
'''
请输入标准的时间,如:21:55:23----->>>:23:59:58
23:59:59
'''
案例2:迭代器的判断与是否可以使用next
#__author:"吉勇佳"
#date: 2018/10/14 0014
#function:迭代器的判断----isinstance from collections import Iterator print(isinstance("",Iterator))
print(isinstance([],Iterator))
print(isinstance((),Iterator))
print(isinstance({},Iterator))
print(isinstance((),Iterator))
print(isinstance((x for x in range(2,10)),Iterator))
l=(x for x in range(2,10))
print(next(l))
print(next(l))
print(next(l))
print(next(l)) '''
输出:
False
False
False
False
False
True
2
3
4
5
'''

两种不定长参数的方法比较。
案例1:第一种不定长传递参数
def fun1(name,*others):
print(name)
for i in others:
print(i) fun1("jiajia",22,"男","陕西省渭南市合阳县") '''
输出:
jiajia
22
男
陕西省渭南市合阳县 '''
第二种:不定长传递参数,但是必须是传递一个(x=1,y=2)这种的,在内部转化为字典
def fun2(**kwargs):
print(kwargs) fun2(a=1,b=2,c=3) '''
输出:
{'a': 1, 'b': 2, 'c': 3} 传入以下时候报错。
fun2(1,2,3)
'''
其中:**代表的是键值对的表示方式。
案例2:匿名函数---lambda
(1)lambda表达式1
'''
特点:
1、是一个表达式,比较简洁。
2、不是一个代码块,而是一个表达式,是可以实现一些简繁的逻辑的 '''
# Num1:直接进行传值的方式
print((lambda x,y:x+y)(2,3))
'''
输出:
5
''' # num2:
# 例如:一个整数列表,要求按照列表中元素的绝对值大小升序排列
list1 = [3,5,-4,-1,0,-2,-6]
sorted(list1, key=lambda x: abs(x))
# [0, -1, -2, 3, -4, 5, -6] '''
同理:
排序函数sorted支持接收一个函数作为参数,该参数作为 sorted的排序依据,这里按照列表元素的绝对值进行排序。
当然,我也可以用普通函数来实现:
'''
def foo(x):
return abs(x)
sorted(list1, key=foo)
# [0, -1, -2, 3, -4, 5, -6]
# 只不过是这种方式代码看起来不够 Pythonic 而已。

(一)、map函数
map函数代码原型
map(function,sequence):把sequence中的值当参数逐个传给function,返回一个包含函数执行结果的list。
如果function有两个参数,即map(function,sequence1,sequence2)。
#求1~20的平方
list(map(lambda x:x*x,range(1,21))) #Python2.x使用map(lambda x:x*x,range(1,21)) [1, 4, 9, 16, 25, 36, 49, 64, 81, 100, 121, 144, 169, 196, 225, 256, 289, 324, 361, 400]
(二)、filter函数
#求1~20之间的偶数
list(filter(lambda x:x%2 == 0,range(1,21))) #Python2.x使用filter(lambda x:x%2 == 0,range(1,21)) [2, 4, 6, 8, 10, 12, 14, 16, 18, 20]
(三)、reduce函数
需要引入包:
from functools import reduce
# reduce 函数
from functools import reduce
result=reduce(lambda x,y:x+y ,range(1,101))
print(result) '''
输出:
5050 相当于先把第一个和第二个数相加,得到的结果又给了第一个参数,第二个参数是第三个数,以此类推
'''

---恢复内容结束---
【4】python函数基础的更多相关文章
- 《转》Python学习(17)-python函数基础部分
http://www.cnblogs.com/BeginMan/p/3171977.html 一.什么是函数.方法.过程 推荐阅读:http://www.cnblogs.com/snandy/arch ...
- Python 函数基础、有序集合、文件操作(三)
一.set 特点: set是一个无序且不重复的元素集合访问速度快:天生解决元素重复问题 方法: 初始化 >>> s1 = set()>>> print(type(s ...
- python函数基础学习
函数的定义与调用: def 函数名(参数1,参数2): ‘’’函数注释’’’ print(‘函数体’) return 返回值 定 义:def关键字开关,空格之后接函数名和圆括号,最后冒号结尾 def ...
- 10分钟学会Python函数基础知识
看完本文大概需要8分钟,看完后,仔细看下代码,认真回一下,函数基本知识就OK了.最好还是把代码敲一下. 一.函数基础 简单地说,一个函数就是一组Python语句的组合,它们可以在程序中运行一次或多次运 ...
- Python函数基础和函数参数
函数的定义和函数的调用 return的作用 三种参数的定义 常用的内置函数 len() 函数基础 函数的定义 def 函数名(参数): pass return 表达式 pass在这里表示什么都没有,不 ...
- python函数基础
一.基础 函数的定义 def 函数名(参数): ... 函数体 ... 返回值 #如果函数执行完毕也没有return语句时,自动return None. 空函数 如果想定义一个什么事也不做的空函数,可 ...
- python 函数基础介绍
函数是对程序逻辑进行结构化或过程化的一种编程方法.能将整块代码巧妙地隔离成易于管理的小块,把重复代码放在函数中而不是进行大量的拷贝. 一.函数创建 def 函数创建格式如下: def function ...
- Python函数基础学习(定义、函数参数、递归函数)
1.本程序是测试函数的基础.函数的参数.递归函数的测试. 函数的参数有: 必选参数.默认参数.可变参数.命名关键字参数和关键字参数 #!/usr/bin/python # -*- coding: ut ...
- python函数基础 与文件操作
函数的定义 函数是通过赋值传递的,参数通过赋值传递给函数.def语句将创建一个函数对象并将其赋值给一个变量名,def语句的一般格式如下: def function_name(arg1,arg2[,.. ...
- 4.python函数基础
一.函数 1.函数简介 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但 ...
随机推荐
- 关于打开fiddler后电脑无法正常上网的解决办法(fiddler抓包时的设置)
关于fiddler如何抓取 ie内容(其中:360浏览器和qq浏览器均使用ie内核) 1.打开fiddler,进入tools-options,设置如下.这样配置后,打开fiddler,fiddler ...
- 单击GridView进入编辑模式
一直以来,Insus.NET在实现GridView编辑时,均是在每笔记录第一列或是最后一列放置编辑铵钮,点击编辑铵钮之后,进行编辑模式.本博文是使用另外方式,即是点击GridView记录行任一位置,进 ...
- 从 Hadoop 1.0 到 Hadoop 2.0 ,你需要了解这些
学习大数据,刚开始接触的是 Hadoop 1.0,然后过度到 Hadoop 2.0 ,这里为了书写方便,本文中 Hadoop 1.0 采用 HV1 的缩写方式,Hadoop 2.0 采用 HV2 的缩 ...
- confirm(message)
如果用户点击确定按钮,则 confirm() 返回 true.如果点击取消按钮,则 confirm() 返回 false. 在用户点击确定按钮或取消按钮把对话框关闭之前,它将阻止用户对浏览器的所有输入 ...
- 【代码笔记】iOS-cell折叠
一,效果图. 二,工程图. 三,代码. AppDelegate.h #import <UIKit/UIKit.h> //加入头文件 #import "myQQView.h&quo ...
- 基于express+mongodb+pug的博客系统——后台篇
上一篇介绍了模板引擎pug.js的用法,这一篇就主要写后台逻辑了. 后台的大部分的功能都有了,只是在已经登录的状态下,前台和后台的逻辑处理还不是很完善. 先上几张图吧,仿旧版的简书,改了下UI,因为没 ...
- github|webstorm
分享本地项目到github 从github上迁出项目到本地
- Android Studio 使用Intent实现页面的跳转(带参数)
不管是在APP,还是在网站中,页面之间的跳转都是很常见的,本文主要讲一下在APP中,如何通过Intent实现页面的跳转. 不带参数: 写在MainActivity页面的代码: Intent inten ...
- 前端 css+js实现返回顶部功能
描述: 本文主要是讲,通过css+js实现网页中的[返回顶部]功能. 实现代码: HTML: <div> <button onclick="returnTop()" ...
- text-overflow修剪文本,以省略号显示
overflow: hidden; 必须设置,不然无法修剪文本 white-space: nowrap; 规定段落中的文本不进行换行 text-overflow: ellipsis; 当文本溢出 ...