您的位置:首页 > 新技术 >

你理解python中所有的Sao操作吗?

2020-05-12 10:46:00 来源:电子说

随着深度学习和机器学习的蓬勃发展,python作为一种面向对象的动态类型语言也受到了关注。许多计算机科学班的学生在大学期间主要学习C或java。虽然切换到Python并不困难,但是由于C和java思维的限制,Python使用的一些次要技能可能不会被考虑在这个方向上(毕竟,当我学习一些Python技能时,我立即对“水平凹槽,我还能这样做吗?”感到惊讶!”)

元素交换

以前,当我们交换A和B的值时,通常的操作是:

a=10b=5temp=aa=bb=temp

Python简化了这一操作

a=10b=5a,b=b,a

列表解析

列表解析是Python迭代机制的Sao操作。有一个任务给出一个正整数列表,然后删除其中的偶数。例如,a=[1,2,3,4,5,6,8],注意这里我取了[1,2,3,4,5,6,8]而不是[1,2,3,4,5,6,7]。你会怎么做?

a=[1,2,3,4,5,6,a:中的项目,如果项目%2==0: a .移除(项目)

输出是[1,3,5,8],但没有成功,是吗?如果你以[1,2,3,4,5,6,7]为例,返回的结果确实是你想要的,但这只是巧合。

蟒蛇是怎么做到的?

a=[1,2,3,4,5,6,8]a=if项目%2!=0]

是不是很风骚?

计数器

从集合导入Count A=[' a ',' a ',' a ',' b ',' b ',' c ']肽(dict(Count(a)))

输出为:

{'a': 3,' b': 2,' c': 1}

计数器可以帮助我们自动计算列表中每个元素的数量。这个常用在哪里?在我们的自然语言处理中,我们经常使用词频统计,至少作者喜欢使用这个函数。

Zip功能

代码优先:

a=[1,2,3]b=['a ',' b ',' c ']表示x,y,邮编(a,b):打印(x,y)

输出是

1 a2 b3 c

这有什么用?当使用Python进行深度学习或机器学习时,我们需要构建训练样本和标签,因此有时我们可能会逐项获得一个训练数据,通过迭代zip,我们可以一个接一个地成对获得数据。当然,任何数量的迭代元素都可以添加到zip()中,而不仅仅是这两个例子。

exec

这是我接触Python以来见过的最糟糕的操作,也是我在学习java时的梦想:我希望我能动态地输入一段代码(字符串),然后程序就可以运行了。任何学习过java的人都知道这是不可能的,但是Nima python是好的。

代码=' ' '从集合导入Courta=[' a ',' a ',' b ',' b ',' c ']打印(dict(Courter(a)))' ' '执行(代码)

每个人都可以尝试,真的可以。天空中的骚。

当然,您可以让它通过动态输入运行字符串代码,例如:

代码=输入()

然后从集合导入计数器输入;a=[‘a’、‘a’、‘a’、‘b’、‘b’、‘c’];在通过打印输入的字符串中的每个代码之间使用分号(dict(计数器(a(计数器(a)));分区非常类似于java。然后再跑一次

exec(代码)

你会得到同样的结果。当人们使用python进行科学计算时,这个操作可能不是必需的,但是当您用python编写项目时,它可能是有用的。

怎么样,你了解蟒蛇的所有把戏吗?

栏目导读

无人车“入春”,批量上路仍需“爬坡”

  防控疫情的需求激发之下,代替人类送药、送餐送菜、消毒巡逻的无人车成了疫情期间的特殊尖兵。疫情过后,无人车配送是否...

2020-03-23 17:12

5G、AI、大数据的发展,对智慧城市会有什么影响

市场分调研机构Omdia的最新数据分析显示,全球智能城市人工智能(AI)软件市场将从6 738亿美元(2019年),在2025年将增长到4...

2020-04-07 17:55

机器人制造过程中的传感器技术之磁光效应传感器

现代电测技术日趋成熟,由于具有精度高、便于微机相连实现自动实时处理等优点,已经广泛应用在电气量和非电气量的测量中。

2020-04-07 17:56

微软不需要快速拥抱VR

微软经常在游戏领域开辟路径,扮演开拓者的角色,这一点体现在很多方面,包括微软的尖端技术(DX12终极版 DX光追),硬件(X...

2020-04-07 17:57

波音Starliner载人航天器再次展开测试

去年 12 月,波音为美国宇航局发射了未载人的 Starliner 航天器。然而由于技术问题,任务并没有按计划进行。作为 NASA ...

2020-04-07 17:58