Python的 5 种高级用法,效率提升没毛病!
(给视学算法加星标,提升Python技能)
转自:机器之心(ID:almosthuman2014)
print(x(5, 6)) # prints 30
x = lambda a : a*3 + 3
print(x(3)) # prints 12
return a * a
x = map(square_it_func, [1, 4, 7])
print(x) # prints [1, 16, 49]
def multiplier_func(a, b):
return a * b
x = map(multiplier_func, [1, 4, 7], [2, 5, 8])
print(x) # prints [2, 20, 56] 看看上面的示例!我们可以将函数应用于单个或多个列表。实际上,你可以使用任何 Python 函数作为 map 函数的输入,只要它与你正在操作的序列元素是兼容的。
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
# Function that filters out all numbers which are odd
def filter_odd_numbers(num):
if num % 2 == 0:
return True
else:
return False
filtered_numbers = filter(filter_odd_numbers, numbers)
print(filtered_numbers)
# filtered_numbers = [2, 4, 6, 8, 10, 12, 14]
# Easy joining of two lists into a list of tuples
for i in izip([1, 2, 3], [a , b , c ]):
print i
# ( a , 1)
# ( b , 2)
# ( c , 3)
# The count() function returns an interator that
# produces consecutive integers, forever. This
# one is great for adding indices next to your list
# elements for readability and convenience
for i in izip(count(1), [Bob , Emily , Joe ]):
print i
# (1, Bob )
# (2, Emily )
# (3, Joe )
# The dropwhile() function returns an iterator that returns
# all the elements of the input which come after a certain
# condition becomes false for the first time.
def check_for_drop(x):
print Checking: , x
return (x > 5)
for i in dropwhile(should_drop, [2, 4, 6, 8, 10, 12]):
print Result: , i
# Checking: 2
# Checking: 4
# Result: 6
# Result: 8
# Result: 10
# Result: 12
# The groupby() function is great for retrieving bunches
# of iterator elements which are the same or have similar
# properties
a = sorted([1, 2, 1, 3, 2, 1, 2, 3, 4, 5])
for key, value in groupby(a):
print(key, value), end=)
# (1, [1, 1, 1])
# (2, [2, 2, 2])
# (3, [3, 3])
# (4, [4])
# (5, [5])
numbers = list()
for i in range(1000):
numbers.append(i+1)
total = sum(numbers)
# (2) Using a generator
def generate_numbers(n):
num, numbers = 1, []
while num < n:
numbers.append(num)
num += 1
return numbers
total = sum(generate_numbers(1000))
# (3) range() vs xrange()
total = sum(range(1000 + 1))
total = sum(xrange(1000 + 1))
喜欢文章,点个在看
Python的 5 种高级用法,效率提升没毛病!相关推荐
- python的5种高级用法,效率提高没毛病!
任何编程语言的高级特征通常都是通过大量的使用经验才发现的.比如你在编写一个复杂的项目,并在 stackoverflow 上寻找某个问题的答案.然后你突然发现了一个非常优雅的解决方案,它使用了你从不知道 ...
- c++ map用法_Python的 5 种高级用法,效率提升没毛病
原创:机器之心(ID:almosthuman2014) 任何编程语言的高级特征通常都是通过大量的使用经验才发现的.比如你在编写一个复杂的项目,并在 stackoverflow 上寻找某个问题的答案.然 ...
- python的5种高级用法
Lambda 函数 Lambda 函数是一种比较小的匿名函数--匿名是指它实际上没有函数名. Python 函数通常使用 def a_function_name() 样式来定义,但对于 lambda ...
- 3d量测怎么学距离_零基础学习3D建模用这几种方法,学习效率提升没毛病
相信大部分学习游戏建模的人都是因为对这个行业有兴趣,才会想去学习,当然也有一部分的人是看到这个行业的前景会发展的不错想转行的. 很多人在学习的时候都会出现的一个问题,就是感觉怎么学习都做不好,记得软件 ...
- Python变量与注释高级用法
Python变量与注释高级用法 1.概述 好的变量和注释并非为计算机而写,而是为每个阅读代码的人而写.变量与注释是表达作者思想的基础,他们对代码质量的贡献母庸质疑. 2.变量 2.1.变量解包 1.什 ...
- 已知x=python是一种非常好的编程语言-为什么用Python,高级的Python是一种高级编程语言...
Python特性 如果有人问我Python最大的特点是什么,我会毫不犹豫地告诉他:它简单易学,功能强大.作为一个纯自由软件,Python有许多优点: 很简单.基于"优雅".&quo ...
- Java生成随机数的几种高级用法
转载自 进阶 | Java生成随机数的几种高级用法! 言归正传,众所周知,随机数是任何一种编程语言最基本的特征之一.而生成随机数的基本方式也是相同的:产生一个0到1之间的随机数.看似简单,但有时我们也 ...
- Python面试常用的高级用法,怎么动态创建类?
元类是Python当中的 高级用法 ,如果你之前从来没见过这个术语或者是没听说过这个概念,这是非常正常的,因为一方面它的 使用频率不高 ,另外一方面就是它相对 不太容易理解 .以至于很多Python开 ...
- python基础和第三方库 笔记(python基础完结包括高级用法,第三方库持续更新中...)
python基础 注:本笔记面向有一定基础的人 本笔记是本人快速复习python过程中记录的,不适合零基础的人学习python的主工具,可以作为辅工具,本笔记记录了入门阶段常用操作,如有错误的地方,希 ...
最新文章
- 极光大数据:00后王者大军来袭 荣耀手机偏偏独得恩宠
- eclipse工程中查看android源码
- linux centos yum 报错 [Errno 256] No more mirrors to try 解决方法
- 通俗易懂讲解JavaScript深拷贝和浅拷贝
- 使用Windows Mobile Device Center进行手机的同步
- shujufenxi : shenzhenditie
- 51nod 1172 Partial Sums V2 卡精度的任意模数FFT
- 看懂这些代码,我哭着笑了
- UniMelb Comp30022 IT Project (Capstone) - 2.Vuforia in Unity
- 【渝粤教育】国家开放大学2019年春季 0757-22T经济法基础实务 参考试题
- Rational rose安装步骤
- 听说你会Python?做几道题看看呗
- SylixOS动态内存分配操作
- 银联在线php支付接口,ecshop银联在线支付接口插件(官方版)
- flutter基础 dart语言学习笔记
- 自己搭建项目中存在的一些问题
- 安装k8s - 阿里云镜像
- moviepy截取视频片段的两种方法
- 「技术综述」人脸脸型分类研究现状
- 估算成本 制定预算 区别