Read the Docs

涨见识了,在终端执行 Python 代码的 6 种方式!

帅比萌擦擦* 提交于 2020-07-25 06:14:24
原作: BRETT CANNON 译者:豌豆花下猫@Python猫 英文: https://snarky.ca/the-many-ways-to-pass-code-to-python-from-the-terminal 为了我们推出的 VS Code 的 Python 插件 [1],我写了一个 简单的脚本来生成变更日志 [2](类似于 Towncrier [3],但简单些,支持 Markdown,符合我们的需求)。在发布过程中,有一个步骤是运行 python news ,它会将 Python 指向我们代码中的"news"目录。 前几天,一位合作者问这是如何工作的,似乎我们团队中的每个人都知道如何使用 -m ?(请参阅我的有关 带 -m 使用 pip 的文章 [4],了解原因)(译注:关于此话题,我也写过一篇 更为详细的文章 ) 这使我意识到其他人可能不知道有五花八门的方法可以将 Python 指向要执行的代码,因此有了这篇文章。 1、通过标准输入和管道 因为如何用管道传东西给一个进程是属于 shell 的内容,我不打算深入解释。毋庸置疑,你可以将代码传递到 Python 中。 # 管道传内容给 python echo "print('hi')" | python 如果将文件重定向到 Python,这显然也可以。 # 重定向一个文件给 python python < spam.py

使用Facebook的Pytorch的BigGraph从知识图谱中提取知识

独自空忆成欢 提交于 2020-07-23 22:21:18
机器学习使我们能够训练一个可以将数据转换为标签的模型,从而把 相似的 数据映射到 相似 或相同的标签。 例如,我们正在为电子邮件构建一个垃圾邮件过滤器。我们有很多电子邮件,其中一些标记为垃圾邮件,另一些标记为正常邮件(INBOX)。我们可以构建一个模型,该模型学习识别垃圾邮件。被标记为垃圾邮件的邮件在某种程度上类似于已经标记为垃圾邮件的邮件。 相似性 的概念对于机器学习至关重要。在现实世界中,相似性的概念与某个主题相关,它取决于我们的 知识 。 另一方面,数学模型定义了相似性的概念。通常,我们将数据表示为多维向量,并测量向量之间的距离。 https://www.quora.com/Why-do-we-use-cosine-similarity-on-Word2Vec-instead-of-Euclidean-distance 特征工程是将我们对现实世界中的某个对象的知识转换为数字表示的过程。我们认为相似的对象转化为数字后的向量也会很靠近。 例如,我们正在估算房价。我们的经验告诉我们,房屋是由卧室的数量,浴室的数量,房龄,房屋面积,位置等来定义的。位于同一社区,具有相同大小和房龄的房屋的价格应该大致相同。我们将对房屋市场的了解转化为表征房屋的数字,并用它来估算房屋的价格。 不幸的是,如上所述,手动特征工程在将我们的知识转换为描述性特征的能力方面存在局限性。 有时

多继承下的super()指向的不一定是直接父类

你。 提交于 2020-05-08 04:19:20
常规情况 class Base: def __init__(self): print('Base.__init__') class A(Base): def __init__(self): super().__init__() print('A.__init__') class B(Base): def __init__(self): super().__init__() print('B.__init__') class C(A,B): def __init__(self): super().__init__() print('C.__init__') 如果注释掉class B中的super class B(Base): def __init__(self): # super().__init__() print('B.__init__') super按照方法解析顺序(MRO)列表依次调用 在2中当注释掉B的super,显然Base. init__没有被打印出来,意味着A的super并没有调用Base中的__init ,而是调用了B的__init__ super并不是代指直接父类的意思,而是指代MRO列表中的下一个类 对于你定义的每一个类,Python会计算出一个所谓的方法解析顺序(MRO)列表。 这个MRO列表就是一个简单的所有基类的线性顺序表。例如: 详细查看: https:

python实现微信接口——itchat模块

南楼画角 提交于 2020-05-04 01:52:15
python实现微信接口——itchat模块 安装 sudo pip install itchat 登录 itchat.auto_login() 这种方法将会通过微信扫描二维码登录,但是这种登录的方式确实短时间的登录,并不会保留登录的状态,也就是下次登录时还是需要扫描二维码,如果加上 hotReload==True ,那么就会保留登录的状态,至少在后面的几次登录过程中不会再次扫描二维码,该参数生成一个静态文件 itchat.pkl 用于存储登录状态 退出及登录完成后调用的特定的方法 这里主要使用的是灰调函数的方法,登录完成后的方法需要赋值在 loginCallback 中退出后的方法,需要赋值在 exitCallback 中.若不设置 loginCallback 的值, 将会自动删除二维码图片并清空命令行显示. import itchat, time def lc(): print("Finash Login!") def ec(): print("exit") itchat.auto_login(loginCallback=lc, exitCallback=ec) time.sleep() itchat.logout() #强制退出登录 回复消息 send send(msg="Text Message", toUserName=None) 参数: msg : 文本消息内容

python读取docx文件,就是如此简单

青春壹個敷衍的年華 提交于 2020-05-03 18:01:57
中文编码问题总是让人头疼(尤其是mac本),想要用 Python读取word中的内容 。用open()经常报错,通过百度搜索+问身边小伙伴发现了 Python有专门读取.docx的模块python_docx 。本篇文章主要来解决一个读取docx文件的基本操作。希望感兴趣的小伙伴可以坚持看下去同时欢迎提出宝贵的意见让我们一起进步! 01:问题抛出与引入 import docx path = "C:\\Users\\qin\\Desktop\\1.docx" file_object=open(path,'rb') print(file_object.read()) #输出结果如下所示: b'PK\\x03\\x04\\x14\\x00\\x06\\x00\\x08\\x00\\x00\\x00!\\x00J\\xbc\\x02qm\\x01\\x00\\x00 (\\x06\\x00\\x00\\x13\\x00\\x08\\x02[Content_Types].xml \\xa2\\x04\\x02(\\xa0\..... 一个很简单的docx文件,打印出来的结果却不是我们想要的。对此引入一个十分好用的docx模块,下面就详细介绍该模块的一些基本操作。 02:安装docx模块 pip install python_docx 03:新建文档对象 import docx from

python中对arrow库的总结

 ̄綄美尐妖づ 提交于 2020-05-02 07:35:12
Arrow是一个Python库,为创建,操作,格式化和转换日期,时间和时间戳提供了一种明智的,人性化的方法。 它实现和更新日期时间类型,填补功能上的空白,并提供支持许多常见创建场景的智能模块API。 简而言之,它可以帮助您使用更少的进口和更少的代码来处理日期和时间。 安装 pip install arrow 简单开始 >>> import arrow >>> utc = arrow.utcnow() # 获取世界标准时间 >>> utc <Arrow [ 2018 - 06 - 07 T09: 37 : 28.989983 + 00 : 00 ]> >>> utc = arrow.now() # 获取本地时间 >>> utc <Arrow [ 2018 - 06 - 07 T17: 40 : 19.019529 + 08 : 00 ]> >>> arrow.now( 'US/Pacific' ) # 获取指定时区的时间 <Arrow [ 2018 - 06 - 07 T02: 41 : 54.815029 - 07 : 00 ]> >>> a = arrow.now() >>> a <Arrow [ 2018 - 06 - 07 T17: 44 : 43.519166 + 08 : 00 ]> >>> a .year # 当前年 2018 >>> a .month # 当前月份 6

【PyCharm】选择性忽略 PEP8 警告

…衆ロ難τιáo~ 提交于 2020-05-01 14:40:01
PyCharm 是个很强大的 python IDE,PEP 8 的告警提示也很好用,但是函数名不能包含大写字母等少数几个规范真心觉得不好,作为一名处女座强迫症患者,代码下面的波浪线这种东西是绝对不允许存在的。 File -> Settings -> Editor -> Inspections -> 右侧Python 在 Ignored errors 中添加要忽略的告警ID。注意,要区分是属于 coding 还是 naming。 PEP 8 coding style violation 的告警ID查看 https://pep8.readthedocs.io/en/latest/intro.html#error-codes PEP 8 naming convention violation 的告警ID查看 https://pypi.org/project/pep8-naming/ code sample message N801 class names should use CapWords convention N802 function name should be lowercase N803 argument name should be lowercase N804 first argument of a classmethod should be named ‘cls’

23个系列分类网络,10万分类预训练模型,这是飞桨PaddleClas百宝箱

a 夏天 提交于 2020-04-30 19:41:14
如何训练出优秀的图像分类模型?飞桨图像分类套件 PaddleClas 来助力。 今天咱们来聊聊计算机视觉领域最核心的技术之一——图像分类。顾名思义图像分类是指根据图像信息把不同类别的图像自动区分开来,并能指出图像类别信息。如图 1 所示,当前图像分类技术有着非常广泛的应用场景。 图 1 图像分类技术应用 此外图像分类技术在计算机视觉各类任务中堪称「基石」,这和人类的视觉方面的技能树点亮顺序很像。婴儿在能看清周围事物后,父母除了教他认识爸爸妈妈之外,还会通过画本告诉他,这是花,这是草,这是车,这是飞机等等,这其实就是训练图像分类的过程。可以说图像分类是人类最先学到的一门本领。而在此基础之上,才会继续学会指出什么物体在什么位置(目标检测),以及如何去接触物体(图像分割)等等。如果您仔细分析下计算机视觉的其它技术,您会发现,也确实是如此。 对于其它视觉任务,像图像目标检测、图像分割、图像检索、自然场景文字检测和识别、人脸检测和识别等等,常常将图像分类的网络结构作为骨干网络。例如使用基于 ImageNet1K 分类数据集训练的模型作为特征提取器,来提升目标任务的组网效率和效果。如果把某个视觉任务看成是建造一栋大楼,图像分类的网络结构和预训练模型则可以看成是这栋大楼牢固的地基和稳定的骨架。 图像分类如此重要,可想而知训练出优秀的图像分类模型也是一个很有挑战的任务

itchat库微信自动回复祝福语

北城以北 提交于 2020-04-30 01:59:06
过年了,之前看到一些python文章介绍用itchat自动回复微信,我自己就写了一个。 官方文档https://itchat.readthedocs.io/zh/latest/,这个库挺简洁的,对着接口写就行了。 我的环境是win10+python3.7, 先pip install itchat 安装,用到一些别的库也自动装好了。发送的脚本如下 # -*- coding: utf-8 -*- import time,random import itchat as wx @wx.msg_register([wx.content.TEXT]) def text_reply(msg): #先判断接受到的信息是否为文本类型 if msg['Type']=='Text': info = msg['Content'] #根据出现的祝福关键字判断是否为祝福语 for word in kword: if word in info: index = random.randint(0, len(messages)-1) #一下子回复不太好,先停留一段时间 time.sleep(5) wx.send_msg(messages[index], msg['FromUserName']) #for会一直判断下去,所以发送后就退出这段程序,不然可能会发多次 break if __name__ == '_

Modulefile默认版本文件编写方式

瘦欲@ 提交于 2020-04-29 15:54:14
在使用Moudle工具时,经常看到(default)项,此项代表当你使用module load xxx的时候,在xxx的后面不需要添加版本,即可载入default默认版本。 那么如何设置这个default项呢。 在 Module s 软 件4.0以上版本中,使用.version 和.modulerc文件来控制默认版本(注意,前面有一个 “点”) .version文件写法 #%Module1.0 ## ## The desired version of X11 ## set ModulesVersion "4.9.3" .modulerc文件写法 #%Module1.0 ## ## The desired version of X11 ## module-version "4.9.3" default 将写好的文件放置在modulefile同级目录下,即可实现在module avail 时查看到默认版本,在module load时载入默认版本 来源: oschina 链接: https://my.oschina.net/u/3059462/blog/4258416