![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python基础
风火编程
python代码应力求简洁高效, 兼顾可读性.
博文章大致可以分为:
1. 总结性的
以功能为导向, 总结工作中实现某一功能可以使用的方法.
2. 勘误性的
试图纠正流行博客中的错误, 不要让转载变成传播错误.
3. 优化性的
主要从简洁和效率两方面考虑,优化一些网络上的代码
从事python开发工作五年之后总结和分享从入门开始的笔记.时刻铭记python是开源的.
QQ &&微信: 77245741
展开
-
风火编程--python获取进程状态
获取进程状态原创 2022-09-28 23:27:43 · 861 阅读 · 0 评论 -
风火编程--centos7安装配置mongodb
风火编程–centos7安装配置mongodb配置yum源vim /etc/yum.repos.d/mongodb-org-4.0.repo 写入内容并保存[mngodb-org]name=MongoDB Repositorybaseurl=http://mirrors.aliyun.com/mongodb/yum/redhat/7Server/mongodb-org/4.0/x86_64/gpgcheck=0enabled=1更新yumyum update安装mo原创 2021-12-22 16:14:10 · 847 阅读 · 0 评论 -
风火编程--centos7在项目下创建虚拟环境及使用
虚拟环境的使用安装virtualenv(如果没有安装)pip3 install virtualenv**切换到项目目录cd /usr/projects/CVBG创建虚拟化环境**virtualenv -p python3 venv激活虚拟环境source ./venv/bin/activate退出虚拟环境deactivate...原创 2021-11-16 16:41:18 · 895 阅读 · 0 评论 -
风火编程--优雅的将pandas的DataFrame转成python列表嵌套字典
一行代码实现df转listdata_list = [{k: v for k, v in zip(columns, value)} for value in df.values]原创 2021-10-19 14:51:01 · 518 阅读 · 0 评论 -
英语学习资源
英语学习资源杨亮推荐的两个在线英语词源词典词源词典网站汉语https://www.youdict.com/ciyuan/英语https://www.etymonline.com/手机APP有道, 金山, 韦氏杨亮推荐的书<><><><><><>先查中文词典, 再查英文词典.要持续学习, 要练习.不仅要背单词, 还要理解造次逻辑, 感受西方的思维方式....原创 2021-08-16 01:19:27 · 407 阅读 · 0 评论 -
风火编程--windows下使用anaconda快速搭建python开发环境
windows下快速搭建python开发环境办公系列博客说明python开发的教程一大把, 但是都是按照教一个程序员的思路来讲的. 而在我眼里, python不仅是专业的程序员的语言, 更应该是绝大多数办公室人员应该掌握的工具, 就像office帮贡软件一样. 所以我计划拿出一些的时间来创作一些文章和视频. 从普通办公人员的角度, 带领学员快速上手,并在实际工作中应用.一. 下载二. 安装安装anaconda集成环境要点1.安装路径, 尽量不要选C盘2.添加系统环境变量...原创 2021-01-05 11:46:25 · 192 阅读 · 0 评论 -
风火编程--python自动维护最新数据窗口的队列
自动维护一个窗口DEMOfrom collections import dequedq = deque(maxlen=3)for i in range(10): dq.append(i) print(dq)原创 2020-12-24 18:16:49 · 122 阅读 · 1 评论 -
风火编程--win10安装pytorch1.4.0
win10安装pytorch1.4.01. 下载安装文件百度网盘: 链接:https://pan.baidu.com/s/1dTLNgAlMqZ0lr0C4uYBmsQ提取码:7z6i直接下载解压, 如果网盘链接失效可以联系我更新, 也可以CSDN下载,0C币.https://download.csdn.net/download/weixin_42620314/136871862. 在当前目录呼出cmd地址栏输入cmd回车即可3. 执行安装命令pip install torchvision原创 2020-12-14 18:23:35 · 210 阅读 · 1 评论 -
风火编程--centos7安装tkinter
centos7安装tkinterNo module named ‘tkinter’yum -y install python36-tkinter tcl-devel tk-develNo module named ‘PIL’pip3 install pillow原创 2020-12-11 14:48:17 · 321 阅读 · 0 评论 -
风火编程--pandas用apply函数多列生成新列
http://landcareweb.com/questions/14403/cong-apply-pandasfan-hui-duo-ge-lie原创 2020-04-28 17:35:48 · 1559 阅读 · 1 评论 -
风火编程--面试题
基础面试题1. 删除字典中所有值为假的元素d = {1:1, 2:None}3. r = {i for i in d.items() if i[-1]}4. print(r)2.对列表中的学生信息列表按照’age’降序排序lst = [{'name': '小明', 'age': 10}, {'name': '小红', 'age': 11}]r = sorted(lst, key=l...原创 2020-03-09 21:12:01 · 134 阅读 · 0 评论 -
风火编程--python中的下划线
python中的下划线双下属性doc: 获取类的描述信息module: 返回当前操作所的对象属的模块class: 表示当前操作的对象所属的类dict: 类或实例的所有属性call: 可执行的实例new: 创建新的实例init: 初始化方法str: 实例的说明私有属性_单前置下划线, 只能在子类和实例对象中使用, 不能在其他模块导入__双前置下划线, 避免与子类属性名冲突(子...原创 2019-03-14 20:49:31 · 145 阅读 · 0 评论 -
额风火编程--内置生成器函数groupby()和zip() / longest(),分组和打包, max() / min()聚合函数
groupby(seq, key)对seq中连续的元素按照key的返回值进行分组, 不连续的重新分组.DEMOfrom itertools import groupbys = “1221”gen = groupby(s)for var, group in gen:print(var, list(group))zip_longest(seq1, seq2, fillvalue=Non...原创 2019-04-20 21:48:47 · 266 阅读 · 0 评论 -
风火编程---内置生成器函数iter()生成器工厂
iter(func, r) / iter(seq)生成器工厂函数重复调用func,如果返回的结果不为r则输出,直到func返回r, 返回生成器对象也可以将可迭代对象转成生成器对象DEMOimport randomgen = iter(lambda:random.randint(1,5), 2)print(list(gen))print("-"*100)print(iter(lis...原创 2019-04-20 20:50:53 · 125 阅读 · 0 评论 -
风火编程--内置生成器函数islice()截取生成器
内置生成器函数islice()截取生成器islice(gen, n)截取生成器的前n各元素, 不影响源生成器DEMOfrom itertools import isliceg = range(10)g1 = islice(g, 3)print(list(g1))print(list(g))...原创 2019-04-20 18:44:43 · 199 阅读 · 0 评论 -
风火编程--内置生成器函数cycle()循环序列, repeat()循环对象,tee复制对象
《流畅的python》读书笔记(七)14.1 迭代解释器需要迭代x时会调用iter(x), 返回一个迭代器, 如果对象没有实现了__iter__方法, iter()会调用__getitem__方法, , 如果两个方法都没有, 则x不是可迭代对象会抛出TypeError.迭代器是指实现了__iter__和__next__方法的对象, __iter__方法应该返回self, 可以通过isinst...原创 2018-11-25 15:13:56 · 460 阅读 · 0 评论 -
火编程--内置生成器函数dropwhile()和takewhile()通过第一个元素进行筛选, 返回序列
内置生成器函数dropwhile()和takewhile()对序列内的第一个元素进行逐个判断, 决定去留,返回序列tdropwhile(func, seq)把seq的第一个元素传入func,如果func返回真,则返回删除第一个元素后其余元素的序列, 如果func返回假,则返回所有元素, 不删除.DEMOfrom itertools import dropwhileli = [1,2,...原创 2019-04-20 17:02:45 · 945 阅读 · 0 评论 -
风火编程--递归函数的返回值
递归函数的返回值递归函数遇到返回值为None的问题代码如下:def fun(i): # 函数内部i+1,期望返回值为5 i += 1 if i < 5: fun(i) else: return iresult = fun(0)print(result)获得返回值的代码:def fun(i): # ...原创 2019-04-10 18:05:17 · 1057 阅读 · 0 评论 -
烽火编程--scrapy爬虫框架的使用
scrapy使用创建项目进入准备存放项目的文件夹打开shellscrapy start crawl使用manager启动在项目同名目录下添加manager.py模块from scrapy.cmdline import executeexecute('scrapy crawl tuijian'.split())...原创 2019-03-16 00:52:07 · 771 阅读 · 0 评论 -
烽火编程--python多进程编程multiprocessing,进程池pool,队列Queue
多进程编程multiprocessing示例DEMO# coding:utg-8import timefrom multiprocessing import Pool, Managerdef work(q): i = q.get() print("get: ", i) time.sleep(5)if __name__ == '__main__': ...原创 2019-03-15 02:05:15 · 207 阅读 · 0 评论 -
风火编程--python中的星*的用法
python中的星(*)的用法乘法运算print(4*5)print("6"*3)声明关键字参数星(*)后的参数不需使用关键字参数传参, 否则抛TypeError异常.def func(a, *, b): print(a,b)func(1,b=1)拆包a, *b, c = list("12345")print(b)不定长参数可以接收任意数量的参数综合运用def...原创 2019-03-14 22:04:54 · 195 阅读 · 0 评论 -
风火编程--python设计哲学
python设计哲学查看方法1. 进入交互界面使用ipython 或者juputer notebook2. 输入import this3. 输出如下内容The Zen of Python, by Tim PetersBeautiful is better than ugly.Explicit is better than implicit.Simple is better t...原创 2019-05-03 22:23:36 · 300 阅读 · 0 评论 -
风火编程--redis使用记事
redis常用命令查看所有键keys *清空数据库flushall原创 2019-09-12 17:32:01 · 106 阅读 · 0 评论 -
风火编程--python时间模块datetime和time
python时间处理模块datetime和time处理12小时(AM/PM)的方法start_time = &amp;quot;2018-09-29-1点12分&amp;quot;st = re.sub(r'[点分]', &amp;quot;&amp;quot;, start_time).replace(&amp;quot;下午&amp;quot;, &amp;quot;PM&原创 2018-10-11 21:44:11 · 322 阅读 · 0 评论 -
风火编程--linux常用命令
linux常用命令原创 2019-05-30 16:43:00 · 122 阅读 · 0 评论 -
风火编程--mongodb使用笔记
修改字段名db.getCollection(‘表名’).update({}, {$rename : {“old” : “new”}}, false, true)原创 2019-05-06 16:01:17 · 217 阅读 · 1 评论 -
风火编程--itertools中的内建函数filter, 返回筛选出元素的生成器对象
内建函数gilter和compressfilter(func, seq)返回经func处理后为真的元素, func可以显式指定为None,过滤真值的元素.DEMOli = [0,1,2,3]r1 = filter(None, li)r2 = filter(lambda x: x % 2, li)print(list(r1), list(r2))compress(seq1, seq2...原创 2019-04-20 01:14:52 · 152 阅读 · 0 评论 -
风火编程--itertools中的内建函数product和combinations, 返回笛卡尔积的生成器对象
内建函数product和combinationsproduct用于生成多个可迭代对象的笛卡尔积, (组合)DEMOfrom itertools import productr = product(["a","b","c"], range(3), range(2))print(list(r))combinations用于生成一个可迭代对象的n元素笛卡尔积(组合)DEMOfrom...原创 2019-04-20 00:35:03 · 277 阅读 · 0 评论 -
风火编程--线程锁RLock(递归锁)的使用
线程锁使用示例递归锁RLockDEMO# coding: utf-8import randomimport timefrom threading import Thread, RLocknum1, num2 = 0, 0lock = RLock()st = time.time()def downloader(num): """ 测试下载器加锁的作用 使...原创 2019-04-20 00:07:54 · 642 阅读 · 0 评论 -
风火编程--内建方法Counter计数器
Counter计数器DEMOfrom collections import Counterc = Counter(“122333”)r = c.most_common(2)print®原创 2019-03-14 16:47:51 · 194 阅读 · 0 评论 -
风火编程--用Pyquery库进行网页源码解析
Pyquery库的常用方法.安装pip install pyquery初始化 from pyquery import PyQuery as pq doc = pq(html) # 文件或字符串查找元素doc.find() # 查找所有子孙元素doc.children() # 查找直接子元素doc.parent() # 查找父元素doc.parents() ...原创 2019-03-14 13:08:19 · 282 阅读 · 0 评论 -
风火编程--快速排序
快速排序python实现代码def quick_sort(alist, start, end): """ 快速排序 :param alist: 待排序的列表 :param start: 第一个元素的索引 :param end: 最后一个元素的索引 :return: 已排序的列表 """ # 递归的退出条件,只有一个元素 i...原创 2019-02-26 18:15:03 · 172 阅读 · 0 评论 -
风火编程--python打印进度条
python下载文件并打印进度条import osimport datetimefrom urllib import requesturl_list = ["url1","url2","url3","url4"]base_path = "/download/"def download(url): print("start:", url, datetime.now()原创 2018-11-06 20:36:10 · 245 阅读 · 0 评论 -
风火编程--爬虫素材及工具方法heades, ua, cookies
“User-Agent”: “Mozilla/5.0(compatible;MSIE9.0;WindowsNT6.1;Trident/5.0;”User-Agent_list = [“Mozilla/5.0(compatible;MSIE9.0;WindowsNT6.1;Trident/5.0;”,“Mozilla/4.0 (compatible; MSIE 8.0; Windows NT ...原创 2018-10-31 23:38:34 · 496 阅读 · 0 评论 -
风火编程--python中的字典, 对无序的理解
字典是无序的, 无序即不是序列, 不能通过索引取值.但是键是有顺序的.,键的顺序是根据加入字典的时序排列的.adict.keys ()的类型是dice_key, 是散列形式存在的对象, 不是序列,也不能通过索引取值, 但可以转成列表/元组/集合等序列.DEMO t = ((1,2), (11,22),(111,222))def func_desc(): """遍历顺序相反的"""..原创 2018-10-26 21:53:28 · 1172 阅读 · 0 评论 -
风火编程--正则表达式re匹配ipv4严谨表达
直接上代码import repattern = re.compile(r"(?=(\b|\D))((\d|([1-9][0-9][0-9])|1\d{1,2}|(2[0-4]\d)|(25[0-5]))\.){3}([0-9]|([1-9][0-9][0-9])|1\d{2}|(2[0-4]\d)|(25[0-5]))(?=(\b|\D))")r = pattern.match("0.0....原创 2018-10-26 20:25:06 · 321 阅读 · 0 评论 -
风火编程--python3爬虫编码问题解决方案
python3中文显式问题 str = &quot;你好&quot; str_new = str..encode('utf-8').decode('unicode_escape')原创 2018-10-23 17:49:02 · 3963 阅读 · 1 评论 -
风火编程--字符串格式化
https://blog.csdn.net/u014770372/article/details/76021988原创 2019-03-09 17:31:34 · 154 阅读 · 0 评论 -
风火编程--python的日志配置
python日志配置单独脚本# 日志 配置# ====================================================================LOG_DIR = "/data/log/resume/"if not os.path.exists(LOG_DIR): os.makedirs(LOG_DIR)logfilename = os.p...原创 2018-09-20 12:39:33 · 301 阅读 · 0 评论 -
风火编程---毒药算法题
经典算法面试题–检测毒药代码问:有100瓶药水,其中一只有毒.小白鼠注射有毒的药水后15分钟内死亡.为了确保在一小时内检测出毒药至少需要多少只小白鼠?答:首先口算出能够同步(顺序)完成的实验次数n = 60 / 15= 4.如果不能整除的取整数部分, 写入代码为n = tt // pt然后使用以下算法# coding: utf-8from math import ceildef c...原创 2018-09-30 21:08:05 · 970 阅读 · 1 评论