好用到起飞的 Python 技巧!
Python简单易学,现今非常流行。Python被用于各种场景,如数据科学、机器学习、web开发、脚本编制、自动化等等。
Python的简单易学性在数据科学非常重要。尽管一些数据科学家有计算机科学背景或了解其他编程语言,但仍有许多数据科学家来自各类专业,如统计学、数学或其他技术学科,当他们刚进入这个行业时,可能并没有那么多编程知识。Python语法易于理解和编写的优势,使它成为一种流行于快速且易于学习的编程语言。
在本文中,云朵君将和大家一起学习40个可以帮助你加快数据处理效率的的方法和技巧,希望对你有所帮助。
01列表推导式
列表的元素可以在一行中循环遍历。
numbers=[1,2,3,4,5,6,7,8]
even_numbers=[numberfornumberinnumbersifnumber%2==0]
print(even_numbers)
输出
[1,3,5,7]
同样可以使用字典、集合和生成器来完成推导式。
dictionary={'first_num':1,'second_num':2,
'third_num':3,'fourth_num':4}
oddvalues={key:valuefor(key,value)indictionary.items()ifvalue%2!=0}
print(oddvalues)Output:{'first_num':1,
'third_num':3}
02枚举函数
Enumerate(枚举)是一个很有用的函数,用于迭代对象,如列表、字典或文件。该函数生成一个元组,其中包括通过对象迭代获得的值以及循环计数器(从0的起始位置)。当希望根据索引编写代码时,循环计数器就派上用场了。
来看一个示例,其中第一个和最后一个元素会被区别对待。
sentence='JustdoIt'
lenlength=len(sentence)
forindex,elementinenumerate(sentence):
print('{}:{}'.format(index,element))
ifindex==0:
print('Thefirstelement!')
elifindex==length-1:
print('Thelastelement!')
输出
0:J
Thefirstelement!
1:u
2:s
3:t
4:
5:d
6:o
7:
8:I
9:t
Thelastelement!
也可以使用enumerate函数枚举文件。在下面的示例中,在跳出循环之前打印CSV文件的前10行。并且可以在任何文件上使用该函数。
withopen('heart.csv')asf:
fori,lineinenumerate(f):
ifi==10:
break
print(line)
03通过函数返回多个值
在设计函数时,我们经常希望返回多个值。在这里介绍两种典型的方法。
方法一
最简单的是返回一个元组。这种方法通常只在有两个或三个值要返回时使用。但当元组中有更多值时,很容易忘记项目的顺序。
下面的代码部分是一个示例函数,它根据学生的ID号将学生的名字和姓氏作为元组返回。
#返回元组
defget_student(id_num):
ifid_num==0:
return'君','云朵'
elifid_num==1:
return'猴子','小'
else:
raiseException('没有学生的id是:{}'.format(id_num))
当我们使用数字0调用函数时,我们注意到它返回一个具有两个值的元组:'Taha'和'Nate'。
Student=get_student(0)
print('名字:{},姓氏:{}'.format(Student[0],
Student[1]))
输出
名字:君,姓氏:云朵
方法二
第二个选择是返回字典。因为字典是键值对,我们可以对返回的值进行命名,这比元组更直观。
方法二的实现方式和方法一一样,只是返回一个字典。
#返回字典
defget_data(id_num):
ifid_num==0:
return{'first_name':'君',
'last_name':'云朵',
'title':'数据STUDIO',
'department':'A',
'date_joined':'20201001'}
elifid_num==1:
return{'first_name':'猴子',
'last_name':'小',
'title':'机器学习研习院',
'department':'B',
'date_joined':'20201019'}
else:
raiseException('没有员工的id是:{}'.format(id_num))
当结果是字典时,通过键引用特定值会更容易。我们正在调用id_num=0的函数。
employee=get_data(0)
print('first_name:{},nlast_name:{},ntitle:{},ndepartment:{},ndate_joined:{}'.format(
employee['first_name'],employee['last_name'],
employee['title'],employee['department'],
employee['date_joined']))
输出
first_name:君,
last_name:云朵,
title:数据STUDIO,
department:A,
date_joined:20201001
04像在数学中一样比较多个数字
如果有一个值并希望将其与其他两个值进行比较,可以使用以下基本数学表达式:1
这就是我们在小学学到的代数表达式。同样的语句也可以在Python中使用。你应该用过如下的比较方式:
1
鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com
图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!