加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

你与数据科学家只差这26条Python技巧

发布时间:2019-01-31 16:04:27 所属栏目:教程 来源:wLsq
导读:Python是今朝天下上最风行的编程说话之一。由于: 它轻易进修 它用途超广 它有很是多的开源支持(大量的模块和库) 作者 Peter Gleeson 是一名数据科学家,一般事变险些离不python。一起走来,他蕴蓄了不少有效的能力和tips,此刻就将这些能力分享给各人。这

双星“**”放在字典的前面可以让你将字典的内容作为定名参数转达给函数。字典的键是参数的名字,键的值作为参数的值转达给函数。如下所示:

  1. dictionary = {"a": 1, "b": 2} 
  2. def someFunction(a, b): 
  3.     print(a + b) 
  4.     return 
  5. # these do the same thing: 
  6. someFunction(**dictionary) 
  7. someFunction(a=1, b=2) 

当你想要建设一个函数,它必要能处理赏罚事先没有界说过的参数,那么就要用到前面提到的能力了。

LIST COMPREHENSIONS

List comprehensions(列表推导式)

列表推导式可以说是我最喜好的Python能力之一。这种表达式可以让你写出像天然说话一样易于领略而且还很简捷的代码。

你可以通过这个链接相识更多关于列表推导式的用法。地点:https://www.learnpython.org/en/List_Comprehensions

  1. numbers = [1,2,3,4,5,6,7] 
  2. evens = [x for x in numbers if x % 2 is 0] 
  3. odds = [y for y in numbers if y not in evens] 
  4. cities = ['London', 'Dublin', 'Oslo'] 
  5. def visit(city): 
  6.     print("Welcome to "+city) 
  7. for city in cities: 
  8.     visit(city) 

MAP

Python有很多很是有效的内置函数。个中一个就是map()——出格是和lambda函数相团结的时辰。

  1. x = [1, 2, 3] 
  2. y = map(lambda x : x + 1 , x) 
  3. # prints out [2,3,4] 
  4. print(list(y)) 

在这个例子中,map()对x中的每一个元素都应用了一个简朴的lambda函数。它会返回一个map工具,这个工具可以被转化成可迭代工具,如列表可能元组。

NEWSPAPER3K

newspaper3k,假如你还没有见过它,那么你也许会被这个Python newspaper模块所惊艳到。

它可以让你检索到一系列国际领先出书物中的消息和相干的元数据。你可以检索图片、文本和作者名。它乃至有一些内置的天然说话处理赏罚成果。以是,假如你正在思量行使BeautifulSoup 或其他廉价的爬虫库来应用于你的下一个项目。那么,省省时刻和精神吧,你着实只必要$ pip install newspaper3k。

OPERATOR OVERLOADING(操纵符重载)

Python支持操纵符重载。“操纵符重载”着实是个简朴的观念,你是否曾经想过为什么Python可以让你行使“+”操纵符来同时实现加法和毗连字符串?这就是操纵符重载在施展浸染。

你可以界说行使Python尺度操纵符标记的工具,这可以让你在特定的情形中行使特定的工具,就像下方的例子一样。

  1. class Thing: 
  2.     def __init__(self, value): 
  3.         self.__value = value 
  4.     def __gt__(self, other): 
  5.         return self.__value > other.__value 
  6.     def __lt__(self, other): 
  7.         return self.__value < other.__value 
  8. something = Thing(100) 
  9. nothing = Thing(0) 
  10. # True 
  11. something > nothing 
  12. # False 
  13. something < nothing 
  14. # Error 
  15. something + nothing 

PPRINT

Python的默认print函数可以满意一般的输出使命,但假如要打印更大的、嵌套式的工具,那么行使默认的print函数打印出来的内容会很丑恶。

这个时辰我们就必要pprint了,它可以让伟大的布局型工具以可读性更强的名目表现。这对付常常要面临非平凡数据布局的Python开拓者来说是必不行少的器材。

  1. import requests 
  2. import pprint 
  3. url = 'https://randomuser.me/api/?results=1' 
  4. users = requests.get(url).json() 
  5. pprint.pprint(users) 

QUEUE(行列)

Python支持多线程,它是通过尺度库中的Queue模块来实现的。这个模块可以让你实现行列数据布局。这种数据布局可以让你按照特定的法则添加和检索条目。

“先辈先出”(FIFO)行列可以让你凭证添加工具的次序来检索他们。“后进先出”(LIFO)行列可以让你起首会见最近添加的工具。最后,优先行列可以让你按照他们排序的次序举办检索。

_REPR_

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读