千锋教育-做有情怀、有良心、有品质的职业教育机构

400-811-9990
手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

上海
  • 北京
  • 郑州
  • 武汉
  • 成都
  • 西安
  • 沈阳
  • 广州
  • 南京
  • 深圳
  • 大连
  • 青岛
  • 杭州
  • 重庆
当前位置:沈阳千锋IT培训  >  技术干货  >  好用到起飞的 Python 技巧!

好用到起飞的 Python 技巧!

来源:千锋教育
发布人:xqq
时间: 2023-11-12 05:17:32

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<30

在Python中实现上述比较方式的另一种比较方法是:1

x=5

print(1

输出

True

05将字符串转换为字符串列表

假设将函数的输入作为字符串,但它应该是这样的列表:

输入=[[1,2,3],[4,5,6]]

其实无需处理复杂的正则表达式,只需导入模块'ast'并调用其函数literal_eval:

importast

defstring_to_list(string):

returnast.literal_eval(string)

string="[[1,2,3],[4,5,6]]"

my_list=string_to_list(string)

print(my_list)

输出

[[1,2,3],[4,5,6]]

06For-Else方法

此方法用于在列表上应用循环。通常,当你想遍历你应用的列表时,可以使用for循环。但是在这种方法中,你可以在循环中传递一个else条件,这种情况极为罕见。其他编程语言不支持这种方法。

看看它在一般情况下是如何工作的:如果要检查列表中是否有偶数。

number_List=[1,3,7,9,8]

fornumberinnumber_List:

ifnumber%2==0:

print(number)

break

else:

print("Noevennumbers!!")

输出

8

如果找到偶数,则将打印该数字,并且else部分将不会执行,因为我们传递了一个break语句。如果break语句从不执行,则else块将执行。

07从列表中找到N个最大/小的元素

通过使用'heapq'模块,你可以从列表中找到n-largest或n-smallest元素。

importheapq

numbers=[80,25,68,77,95,88,30,55,40,50]

print(heapq.nlargest(5,numbers))

print(heapq.nsmallest(5,numbers))

输出

[95,88,80,77,68][25,30,40,50,55]

08函数参数以列表值传递

可以使用'*'访问列表的所有元素。

defSummation(*arg):

sum=0

foriinarg:

sum+=i

returnsum

result=Summation(*[8,5,10,7])

print(result)

输出

30

09重复整个字符串

只需将字符串乘以一个数字,即希望字符串重复的次数。

value="数据STUDIO"

print(value*3)

print("-"*31)

输出

数据STUDIO数据STUDIO数据STUDIO

----------------------------

10从列表中找到元素的索引

使用".index"从列表中查找元素的索引。

cities=['Vienna','Amsterdam','Paris','Berlin']

print(cities.index('Berlin'))

以上内容为大家介绍了好用到起飞的Python技巧!,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。http://www.mobiletrain.org/

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。

猜你喜欢LIKE

pythontime模块的时间格式

2023-11-14

python怎样使用read读取不同类型文件

2023-11-14

python装饰属性的方法

2023-11-14

最新文章NEW

pythonsys模块有哪些用法

2023-11-14

python开发环境是什么

2023-11-14

pythoninsert函数是什么

2023-11-14

相关推荐HOT

更多>>

快速通道 更多>>

最新开班信息 更多>>

网友热搜 更多>>