加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 移动互联 > 正文

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

发布时间:2019-01-29 23:13:20 所属栏目:移动互联 来源:Peter Gleeson
导读:Python是目前世界上最流行的编程语言之一。因为: 1.它容易学习 2.它用途超广 3.它有非常多的开源支持(大量的模块和库) 作者 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函数打印出来的内容会很丑陋。

(编辑:核心网)

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

热点阅读