python自定义函数和推导
#之所以把这俩写一起,并不是因为这俩有什么关系,因为都太简单,没什么可说的
#自定义函数的格式,def开头,后面空格,在后面是函数名,接括号,括号里是入参参数
#!/usr/bin/python
# coding: UTF-8 def abc(num):
if num > 10:
return
print num
num += 1
abc(num) if __name__ == '__main__':
abc(1)
结果是1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n
说明下,这里有个递归,递归在代码里最好不要出现,因为每递归一次都会占用的内存都会累加递增,因此如果可以,尽量把递归改成循环例如这个例子,可以改成下面这样
#!/usr/bin/python
# coding: UTF-8 def abc(num):
while num > 10:
print num
num += 1
return if __name__ == '__main__':
abc(1)
这样就可以了
再看看推导,就说下for的把,其他的忘了,以后想起来再加
a = range(10)
b = []
for i in a:
i += 1 #每个元素加1
b.append(i) #把i加到空list,b中
print b #结果是[1,2,3,4,5,6,7,8,9,10]
#推导变成
b = [i+1 for i in a]
#还可以加入if
b = [i+1 for i in a if i > 3] #取a里面>3的数,结果是[5,6,7,8,9,10]
python自定义函数和推导的更多相关文章
- 17.python自定义函数
什么是函数,函数说白了就是将一系列代码封装起来,实现代码的重用. 什么是代码重用? 假设我有这样的需求: 但是我还是觉得太麻烦了,每次想吃饭的时候都要重复这样的步骤.此时,我希望有这样的机器:
- python 自定义函数
200 ? "200px" : this.width)!important;} --> 介绍 在Python中,定义一个函数要使用def语句,依次写出函数名.括号.括号中的参 ...
- python自定义函数和内置函数
函数 1.定义 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 先定义,后使用 1.2分类 系统函数 自定义函数 1.3语法: def functionname(parameter ...
- Python学习教程(learning Python)--2.3 Python自定义函数传参函数设计
Python里自定义子函数时,可以在调用时携带一些参数到子函数里去处理.具体用法结构如下: def func(arguments): statement statement etc. 定义子函数一定要 ...
- Python自定义函数的参数
在Python中自定义的函数可以有三类不同的参数 formal parameters positional arguments Keyword Arguments When a final forma ...
- Python基础篇【第2篇】: Python自定义函数
Python函数 1. 函数定义 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段.函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print ...
- python自定义函数大全
写的零碎的python脚本太多了,到一定阶段就会出现一个问题,即以前写过的脚本找不到了,现在临时要用,还得再重写一遍,这就非常难受了,代码不能复用. 还好我有一个比较好的习惯,我喜欢把python脚本 ...
- python自定义函数可以向前引用不用声明
#有些编程语言不够"聪明",向这类向前引用的方式会导致报错,但Python足够"醒目",这段代码是正确的! def next(): print('我在n ...
- python自定义函数在Python解释器中调用
https://docs.python.org/2.7/tutorial/modules.html Modules If you quit from the Python interpreter an ...
随机推荐
- CentOS 7通过RVM来安装指定版本的Ruby
RVM也就是Ruby Version Manager,Ruby版本管理器 1.安装依赖库: yum install gcc-c++ patch readline readline-devel zlib ...
- Docker快速入门(一)
Docker是Go语言开发实现的容器.2013年发布至今,备受推崇.相关文档.学习资料十分详尽.近期公司docker项目要推进,得重新学习一下.博客以笔记. 1 容器诞生背景及优势 (1)软件开发和运 ...
- Charles在Mac中抓包使用说明
在工作期间,经过同事介绍,发现一款很强大的抓包工具Charles,现在记录下来分享给大家.常用的有以下几款功能: 1.支持配置抓取定向地址的网络请求 打开charles,打开Proxy->Rec ...
- JAVA WEB 过滤器(Filter)中向容器 Spring 注入 bean
如果直接使用 @Autoware 获取 bean 会直接使该 bean 为 null,这是因为这种配置过滤器的方法无法在过滤器中使用 Spring bean,因为 Filter 比 bean 先加载, ...
- C#Redis 常用key操作
一.前戏 在该系列的前几篇博客中,主要讲述的是与Redis数据类型相关的命令,如String.List.Set.Hashes和Sorted-Set.这些命令都具有一个共同点,即所有的操作都是针对与Ke ...
- .29-浅析webpack源码之doResolve事件流(1)
在上一节中,最后返回了一个resolver,本质上就是一个Resolver对象: resolver = new Resolver(fileSystem); 这个对象的构造函数非常简单,只是简单的继承了 ...
- 浅析Java源码之HashMap
写这篇文章还是下了一定决心的,因为这个源码看的头疼得很. 老规矩,源码来源于JRE1.8,java.util.HashMap,不讨论I/O及序列化相关内容. 该数据结构简介:使用了散列码来进行快速搜索 ...
- Redis-其他命令
1.排序 SORT : SORT sourcekey [BY pattern] [LIMIT offset count] [GET pattern [GET pattern ...]] [A ...
- C#网络爬虫--多线程处理强化版
上次做了一个帮公司妹子做了爬虫,不是很精致,这次公司项目里要用到,于是有做了一番修改,功能添加了网址图片采集,下载,线程处理界面网址图片下载等. 说说思路:首相获取初始网址的所有内容 在初始网址采集图 ...
- [C#]非阻塞监听键盘输入
摘要 最近需要调研监控用户键盘输入的内容,然后收集数据进行用户行为分析.然后就用控制台程序弄了一个demo. 代码如下 class Program { static void Main(string[ ...