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

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

发布时间:2019-01-30 07:48:15 所属栏目:教程 来源:wLsq
导读:Python是目前世界上最流行的编程语言之一。因为: 它容易学习 它用途超广 它有非常多的开源支持(大量的模块和库) 作者 Peter Gleeson 是一名数据科学家,日常工作几乎离不python。一路走来,他积累了不少有用的技巧和tips,现在就将这些技巧分享给大家。这

当你定义一个类的时候,提供一个方法可以返回用来表示该类对象的可打印字符串会非常有用。例如:

  1. >>> file = open('file.txt', 'r') 
  2. >>> print(file) 
  3. <open file 'file.txt', mode 'r' at 0x10d30aaf0> 

这使得debug更加方便,具体的定义方式如下:

  1. class someClass: 
  2.     def __repr__(self): 
  3.         return "<some description here>" 
  4. someInstance = someClass() 
  5. # prints <some description here> 
  6. print(someInstance) 

SH

sh库让你像调用方法那样调用系统中的命令。

  1. import sh 
  2. sh.pwd() 
  3. sh.mkdir('new_folder') 
  4. sh.touch('new_file.txt') 
  5. sh.whoami() 
  6. sh.echo('This is great!') 

TYPE HINT(类型提示)

Python是一种动态类型语言。当你定义变量、函数、类别的时候,你不需要指定数据的类型。这可以大大提升你的开发速度,但也是有代价的。你可能会因为一个简单的输入问题而导致运行出错。

在Python3.5之后,这就不是问题了,在定义函数的时候你可以自主选择要不要提供类型提示。

  1. def addTwo(x : Int) -> Int: 
  2.     return x + 2 

你还可以定义类型的别名:

  1. from typing import List 
  2. Vector = List[float] 
  3. Matrix = List[Vector] 
  4. def addMatrix(a : Matrix, b : Matrix) -> Matrix: 
  5.   result = [] 
  6.   for i,row in enumerate(a): 
  7.     result_row =[] 
  8.     for j, col in enumerate(row): 
  9.       result_row += [a[i][j] + b[i][j]] 
  10.     result += [result_row] 
  11.   return result 
  12. x = [[1.0, 0.0], [0.0, 1.0]] 
  13. y = [[2.0, 1.0], [0.0, -2.0]] 
  14. z = addMatrix(x, y) 

虽然不是强制性的,类型注释可以让你的代码理解起来更加简单。它们也允许你使用类型检测工具在运行之前捕获这些零散的类型错误。如果你正在从事大型、复杂的项目,那么类型注释也许会非常有帮助。

UUID

通过Python标准库中的uuid模块,可以快速并简单地生成统一的唯一ID(又称UUID)。

  1. import uuid 
  2. user_id = uuid.uuid4() 
  3. print(user_id) 

UUID是128位的全局唯一标识符,通常由32字节的字符串表示。它可以保证时间和空间的唯一性,也称为GUID,全称为:UUID —— Universally Unique IDentifier,Python 中叫 UUID。它通过MAC地址、时间戳、命名空间、随机数、伪随机数来保证生成ID的唯一性。

VRITUAL ENVIRONMENTS

这可能是我最喜欢的Python技巧了。你可能经常要处理不止一个Python项目,不幸的是,有时候不同项目会依赖不同的Python版本。这个时候,你应该在系统里安装哪个Python版本呢?

幸运的是,Python可以支持建立不同的虚拟环境来满足不同的版本需求。

  1. python -m venv my-project 
  2. source my-project/bin/activate 
  3. pip install all-the-modules  

现在你可以在一台机器上安装和运行各个独立版本的Python。太棒了!

WIKIPEDIA

Wikipedia有一个很棒的API,它可以让用户通过编程访问到维基的词条内容。使用Python中的wikipedia模块可以让你以最便捷的方式访问该API。

  1. import wikipedia 
  2. result = wikipedia.page('freeCodeCamp') 
  3. print(result.summary) 
  4. for link in result.links: 
  5.     print(link) 

与真实站点一样,该模块支持多种语言、页面消除歧义、随机页面检索,甚至还有donate()方法。

YAML

(编辑:核心网)

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

热点阅读