Python
文章平均质量分 87
AI蜗牛之家
北航烟酒僧~ 百度、腾讯自然语言处理算法工程师~
展开
-
数据分析之pandas(进阶)
合并pd.mergepd.merge(left, right, how='inner', on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=True, suffixes=('_x', '_y'), copy=True, indicator=False, validate=None)left: 拼接的左侧DataFrame对象right:原创 2022-12-03 17:24:25 · 873 阅读 · 0 评论 -
Protobuf从入门到“顺手”
文章目录1.概述1.1.proto格式1.2.proto编译2.支持类型2.1.标量数值类型2.2.枚举2.3.内置封装类型2.3.1. Any类型2.3.2. Oneof 类型2.3.3.Map 映射类型2.4.类型的引用3.python中的一些常用用法3.1.json与message转换4.更多详情和大神帖参考很多项目采用Protobuf进行消息的通讯,还有基于Protobuf的微服务框架GRPC,最近在使用一些框架的时候,顺手梳理了一下protobuf的一些语言特性和一些实用技巧。全文基于最新pr原创 2021-08-08 23:11:42 · 1031 阅读 · 0 评论 -
数据分析之pandas
数据导入pd.read_csv(filename):从CSV文件导入数据pd.read_table(filename):从限定分隔符的文本文件导入数据pd.read_excel(filename):从Excel文件导入数据pd.read_sql(query, connection_object):从SQL表/库导入数据pd.read_json(json_string):从JSON格式的字符串导入数据pd.read_html(url):解析URL、字符串或者HTML文件pd.read_clip原创 2021-02-08 17:52:51 · 459 阅读 · 0 评论 -
vscode必备配置
目录1.自动化注释工具2.代码格式化与错误检查1.自动化注释工具我用过的比较不错的注释工具koroFileHeader头模板的配置:链接安装后默认快捷键文件头部注释:window:ctrl+alt+i, mac:ctrl+cmd+i函数注释:window:ctrl+alt+t, mac:ctrl+cmd+t2.代码格式化与错误检查推荐使用flake8和yapf分别是用来错误检查和代码格式化参考连接:VS Code | 配置 flake8 和 yapf...原创 2020-08-30 11:13:25 · 1063 阅读 · 1 评论 -
python魔术方法
文章目录1.构造和初始化2.属性访问控制3.描述器对象4.构造自定义容器(Container)5.上下文管理6.对象的序列化7.运算符相关的魔术方法7.1比较运算符7.2.一元运算符和函数7.3.算术运算符7.4.反算术运算符7.5.增量赋值7.6.类型转化8.其他魔术方法9.Python3中的差异看到一篇很不错的文章,之前自己也想整理一下来着,转载该文在Python中,所有以__双下划线包起来的方法,都统称为"魔术方法"。比如我们接触最多的__init__.有些魔术方法,我们可能以后一辈子都不会转载 2020-07-19 23:04:23 · 358 阅读 · 0 评论 -
docker常用集锦
1.关于dockerdocker是什么?为什么要使用docker?docker的基本原理又是什么?常用命令又有哪些?这些相关概念已经很多大佬整理出来了,具体参见:Docker 入门教程 概念+特点+常用命令这可能是最为详细的Docker入门总结 原理2.常用命令Notice :下面介绍到的命令中containerID如果不特殊说明,一般都可以用containeName来代替...原创 2019-12-22 10:24:27 · 509 阅读 · 0 评论 -
时间戳Timestamp(Python)
Python处理Excel xlrd 读取excel 日期类型2种方式 pandas中Timestamp类用法讲解 python——时间与时间戳之间的转换 python操作excel表格(xlrd/xlwt)Mysql: mysql之TIMESTAMP(时间戳) 取消MySQL timestamp列默认ON UPDATE CURRENT_TIMESTAMP原创 2017-12-11 16:48:57 · 12199 阅读 · 0 评论 -
Anaconda使用总结
Anaconda概述 Anaconda是一个用于科学计算的Python发行版,支持Linux,Mac,Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本python并存、切换以及各种第三方包安装问题。Anaconda利用工具/命令conda来进行package和environment的管理,并且已经包含了Python和相关的配套工具。 在这里我们要区别一下Ana...转载 2017-12-22 00:10:34 · 3395 阅读 · 0 评论 -
python轻量级前端Flask
做代理池用到的一个Flask,他是一個使用Python编写的轻量级Web应用框架,刚刚入坑,在这存个官方链接 前言 请在使用 Flask 前阅读。希望本文能回答你一些关于 Flask 的用途和目标以及 Flask 适用情境的问题。“微” 是什么意思? “微”(micro) 并不表示你需要把整个 Web 应用塞进单个 Python 文件(虽然确实可以 ),也不意味着 Flask 在功能上有所欠缺原创 2017-10-18 10:55:38 · 1513 阅读 · 0 评论 -
windows10 64bit Theano+GPU加速
需要用到theano框架,安装之后发现速度太慢,本子虽然有点差,但是独显还是有的,所以通过GPU加速差不多能BICPU加速在10倍左右,整个环境来来去去用了一天的时间,主要原因还是没有系统教程,各种问题。。。1 需要的环境和版本我的安装环境是win10 anacoda3(>下载< | >教程<) MinGW Theano vs2013 cuda2 安装步骤安装anacod原创 2017-12-29 21:24:24 · 1946 阅读 · 0 评论 -
Python命令行解析之argparse
python中的命令行解析最简单最原始的方法是使用sys.argv来实现,更高级的可以使用argparse这个模块。argparse从python 2.7开始被加入到标准库中,所以如果你的python版本还在2.7以下,那么需要先手动安装。1.基本用法import argparseparser=argparse.ArgumentParser()parser.add_argument("echo"原创 2018-04-02 19:22:03 · 668 阅读 · 0 评论 -
python之数据持久存储pickle
1.背景和介绍我们经常在用脚本处理时需要生成某些量,这些量可能是一个对象,这要怎么存下来以供下次直接在别的脚本里面使用呢?这就用到了Python中的pickle库 python的pickle模块实现了基本的数据序列和反序列化。通过pickle模块的序列化操作我们能够将程序中运行的对象信息保存到文件中去,永久存储;通过pickle模块的反序列化操作,我们能够从文件中创建上一次程序保存的对象。...原创 2018-04-04 00:37:42 · 561 阅读 · 0 评论 -
python 实用函数进阶(更新中)
1.pyhton断言如何为assert断言语句添加异常参数 assert的异常参数,其实就是在断言表达式后添加字符串信息,用来解释断言并更好的知道是哪里出了问题。格式如下: assert expression [, arguments] assert 表达式 [, 参数]assert len(lists) &amp;amp;amp;amp;amp;gt;=5,’列表元素个数小于5’ assert 2==1,’2不等于1’2.list 复原创 2018-04-13 15:23:36 · 388 阅读 · 0 评论 -
Python编码透析
1 Python字符串的encode与decode1.1 简单介绍字符串在Python内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码。 decode()—&amp;amp;gt;将其他编码的字符串转换成unicode编码,如str1.deco...原创 2017-12-05 12:31:33 · 558 阅读 · 0 评论 -
python 全角半角字符转换
1.相关原理全角即:Double Byte Character,简称DBC半角即:Single Byte Character,简称SBC在 windows 中,中文和全角字符都占两个字节,并且使用了 ascii chart 2 (codes 128–255);全角字符的第一个字节总是被置为 163,而第二个字节则是相同半角字符码加上128(不包括空格,全角空格和半角空格也要考虑进去);对...原创 2018-09-19 19:08:00 · 2510 阅读 · 1 评论 -
Pytorch入门(未完待续...)
pytorch 安装教程可参考:Windows下安装PyTorch0.4.0入门介绍:https://ptorch.com/news/1.html1. nn.Embedding在pytorch里面实现word embedding是通过一个函数来实现的:nn.Embedding# -*- coding: utf-8 -*-import numpy as npimport torchim...原创 2018-09-25 11:52:12 · 813 阅读 · 0 评论 -
request+正则表达式爬猫眼
import jsonimport requestsfrom requests.exceptions import RequestExceptionimport reimport timedef get_one_page(url): try: response = requests.get(url) if response.status_code ==转载 2017-09-11 16:55:27 · 902 阅读 · 0 评论 -
pycharm 基础配置
pycharm是一个相当不错的IDE,但是每次安装新环境之后就比较难受,各种设置需要重新查一遍,这里就不定时整理一点相关设置,也是根据自己的需求整理的,以免下次浪费时间文章目录1.import 红线错误2.设置字体大小1.import 红线错误在用pycharm打开一个项目的时候,很多时候会出现一些红色波浪线,提示错误,但是其实运行是没有问题的,只不过pycharm在检测import的路...原创 2019-05-10 17:25:31 · 1393 阅读 · 0 评论 -
tensorflow 填坑笔记(持续更新~)
global_step全局stepglobal_step在滑动平均、优化器、指数衰减学习率等方面都有用到,这个变量的实际意义非常好理解:代表全局步数,比如在多少步该进行什么操作,现在神经网络训练到多少轮等等,类似于一个钟表。global_step经常在滑动平均,学习速率变化的时候需要用到,这个参数在tf.train.GradientDescentOptimizer(learning_rate)...原创 2019-02-11 12:28:21 · 654 阅读 · 4 评论 -
浅析python 装饰器
python中的装饰器可能是入门python中的一个不小的“坑”,其实我在之前入门的时候也是这样的,把之前梳理的“凑”成一小博~1.你为什么需要使用装饰器?网上的一个不错的案例:假设程序中有say_hello()和say_goodbye()两个函数。def say_hello(): print "hello!" def say_goodbye(): print "...原创 2019-01-08 10:55:36 · 314 阅读 · 0 评论 -
ML&DL必备之numpy & matplotlib
在学习machine learing 和Deep learning的时候不免会有一些数据的操作,科学计算和一些矩阵的操作需要用到numpy,而如果想可视化的时候,比如效果展示和调参的时候就需要画图,所以我们plot的的时候就需要用到一个很强大的包,叫matplotlib,今天对这两个包展开说明,都时经常用到的一些简单的操作!numpy集锦属性array = np.array([[原创 2018-01-26 22:16:59 · 577 阅读 · 0 评论 -
浅析python 数据存储原理&深拷贝&浅拷贝&is ==
1.存储方式在高级语言中,变量是对内存及其地址的抽象。对于python而言,python的一切变量都是对象,变量的存储,采用了引用语义的方式,存储的只是一个变量的值所在的内存地址,而不是这个变量的只本身。引用语义:在python中,变量保存的是对象(值)的引用,我们称为引用语义。采用这种方式,变量所需的存储空间大小一致,因为变量只是保存了一个引用。也被称为对象语义和指针语义。值语义:有些语...原创 2019-01-04 18:46:54 · 1084 阅读 · 0 评论 -
用python浅谈函数式编程
整理资料发现一个特别好的编程思想,顺便还解锁了很多实用函数~当我们说起函数式编程来说,我们会看到如下函数式编程的长相:函数式编程的特点:immutable data 不可变数据:像Clojure一样,默认上变量是不可变的,如果你要改变变量,你需要把变量copy出去修改。这样一来,可以让你的程序少很多Bug。因为,程序中的状态不好维护,在并发的时候更不好维护。(你可以试想一下如果你的程序有...原创 2019-01-03 22:30:32 · 316 阅读 · 0 评论 -
python读写文件剖析
前段时间用print在一个启动的服务上面打log,结果每次都是等半天,然后一股脑的读写,直觉告诉我是buffer的问题~1.基本操作f = open('py3.txt','wt',encoding='utf-8')f.write('你好')f.close()f = open('py3.txt','rt',encoding='utf-8')s = f.read()print(s)...原创 2019-01-03 18:34:30 · 260 阅读 · 0 评论 -
Python常用集锦(upgrading...)
1、去除字符串首尾空格、回车、 tablestrip() ” xyz “.strip() # returns “xyz” ” xyz “.lstrip() # returns “xyz ” ” xyz “.rstrip() # returns ” xyz” ” x y原创 2017-10-13 17:45:15 · 664 阅读 · 0 评论 -
python之正则及应用
测试正则表达式的一个重要网站下图展示了使用正则表达式进行匹配的流程: 正则表达式的大致匹配过程是:依次拿出表达式和文本中的字符比较,如果每一个字符都能匹配,则匹配成功;一旦有匹配不成功的字符则匹配失败。如果表达式中有量词或边界,这个过程会稍微有一些不同,但也是很好理解的,看下图中的示例以及自己多使用几次就能明白。1.2. 数量词的贪婪模式与非贪婪模式正则表达式通常用于在文本中查找匹配的字符串。P原创 2017-10-19 22:58:22 · 1248 阅读 · 0 评论 -
python问题相关译文
我的GitHub地址:translations_abou_python原创 2017-10-16 00:58:54 · 498 阅读 · 0 评论 -
Python之异步IO( asyncio) 协程
项目中用到了,看了还是知道了点皮毛,整理如下:python asyncio网络模型有很多中,为了实现高并发也有很多方案,多线程,多进程。无论多线程和多进程,IO的调度更多取决于系统,而协程的方式,调度来自用户,用户可以在函数中yield一个状态。使用协程可以实现高效的并发任务。Python的在3.4中引入了协程的概念,可是这个还是以生成器对象为基础,3.5则确定了协程的语法。下面将简单介绍async原创 2017-10-18 18:14:59 · 932 阅读 · 0 评论 -
Redis官方文档(入门必备)
函数大全中文文档官方文档原创 2017-10-18 12:43:43 · 7109 阅读 · 0 评论 -
python 进阶之属性函数property
Python中有一个被称为属性函数(property)的小概念,它可以做一些有用的事情。在这篇文章中,我们将看到如何能做以下几点:将类方法转换为只读属性 重新实现一个属性的setter和getter方法 在本文中,您将学习如何以几种不同的方式来使用内置的属性函数。希望读到文章的末尾时,你能看到它是多么有用。开始使用属性函数的最简单的方法之一是将它作为一个方法的装饰器来使用。这可以让你将一个类方法原创 2017-10-18 09:57:20 · 628 阅读 · 0 评论 -
fake-useragent User Agent 伪装
前几天意外找到一个简单实用的库- fake-useragent,可以伪装生成headers请求头中的User Agent值。安装pip3 install fake-useragent各浏览器的user-agent值from fake_useragent import UserAgentua = UserAgent()ie浏览器的user agentprint(ua.ie)Mozilla/5.0原创 2017-10-18 09:44:41 · 3206 阅读 · 0 评论 -
python之tuple与list
一、tuple也是一个class,是不可变的list类型,不可以增删改。创建:tup1 = ('physics', 'chemistry', 1997, 2000);tup2 = (1, 2, 3, 4, 5 );tup3 = "a", "b", "c", "d";访问:(与list一样)tup1[1:5];修改:不可以修改,只能增加新的部分;tup3 = tup1 + tup2;print原创 2017-09-12 19:42:35 · 717 阅读 · 0 评论 -
Python MySQL使用与实例
1、Python使用MySQL的流程: 2、.启动MySQL服务器:以管理员身份启动“cmd”,输入命令:’net start mysql‘Python中使用MySQL导入方法:import MySQLdb3、.创建Connection Connection:创建了Python客户端与数据库之间的网络通路。他的参数如下 参数名 类型 说明 host String MySQL原创 2017-09-12 19:34:17 · 1485 阅读 · 0 评论 -
深入理解python的yield和generator
前言没有用过的东西,没有深刻理解的东西很难说自己会,而且被别人一问必然破绽百出。虽然之前有接触过python协程的概念,但是只是走马观花,这两天的一次交谈中,别人问到了协程,顿时语塞,死活想不起来曾经看过的东西,之后突然想到了yield,但为时已晚,只能说概念不清,所以本篇先缕缕python的生成器和yield关键字。什么是生成器生成器是一个特殊的程序,可以被用作控制循环的迭代行为 生成器类似于返转载 2017-09-09 19:00:02 · 814 阅读 · 0 评论 -
Python爬微博(ajax+mongo)
import requestsfrom urllib.parse import urlencodefrom pyquery import PyQuery as pqfrom pymongo import MongoClientbase_url = 'https://m.weibo.cn/api/container/getIndex?'headers = { 'Host': 'm原创 2017-09-13 22:30:53 · 649 阅读 · 0 评论 -
python爬今日头条(ajax分析)
爬取今日头条关键字搜索街拍import osfrom multiprocessing.pool import Poolimport requestsfrom urllib.parse import urlencodefrom hashlib import md5headers = { 'Host':'www.toutiao.com', 'Referer':'https://w原创 2017-09-15 20:57:37 · 1127 阅读 · 0 评论 -
Python多进程multiprocessing.Pool()
1、multiprocessing.pool函数class multiprocessing.pool.Pool([processes[, initializer[, initargs[, maxtasksperchild[, context]]]]]) 用途:A process pool object which controls a pool of worker processes to wh原创 2017-09-14 15:26:06 · 1277 阅读 · 1 评论 -
python实用函数之join()
函数:string.join()Python中有join()和os.path.join()两个函数,具体作用如下: join(): 连接字符串数组。将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串 os.path.join(): 将多个路径组合后返回一、函数说明1、join()函数语法: ‘sep’.join(seq)参数说明 sep:分隔符。原创 2017-09-13 22:15:52 · 970 阅读 · 0 评论 -
Python爬虫之Xpath与lxml库的用法
XPath 是一门在 XML 文档中查找信息的语言。XPath 用于在 XML 文档中通过元素和属性进行导航。在学习之前应该具备的知识:在您继续学习之前,应该对下面的知识有基本的了解: HTML / XHTML XML / XML 命名空间什么是 XPath?XPath 使用路径表达式在 XML 文档中进行导航 XPath 包含一个标准函数库 XPath 是 XSLT 中的主要元素 XPa原创 2017-09-10 17:53:34 · 1156 阅读 · 0 评论 -
Python的hasattr() getattr() setattr() 函数使用方法详解
Python的hasattr() getattr() setattr() 函数使用方法详解hasattr(object, name)判断一个对象里面是否有name属性或者name方法,返回BOOL值,有name特性返回True, 否则返回False。 需要注意的是name要用括号括起来 1 >>> class test(): 2 ... name="xiaohua" 3 ...转载 2017-10-11 14:47:58 · 661 阅读 · 0 评论