![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python
文章平均质量分 88
LoveMIss-Y
爱生活,爱学习,爱这个世界上一切让自己觉得快乐的东西,爱MIss-Y
展开
-
使用pyinstaller打包tkinter程序
(1)如何同时打包多个python文件(2)打包过程中有缺失的包怎么处理(3)如何解决打包程序过大的问题以上三个问题是使用pyinstaller打包python文件常见的问题,我将以自己开发的一个tkinter程序来进行说明,所有操作与结果自己已经验证。如果不考虑打包程序大小的问题,可能会出现一个打包的exe程序好几百兆,甚至更大,这不仅占用资源,启动速度也比较慢,所以最好是重新创建一个比较干净的python环境要好一些。原创 2024-02-03 14:01:31 · 1888 阅读 · 0 评论 -
python日志记录系列教程,内置logging模块(三)——三种配置日志记录的方式
前言:python日志记录的系列文章的前面两篇文章已经介绍了,模块级别的日志记录与面向类与对象的日志记录,即:python日志记录系列教程,内置logging模块(一)——直接使用logging模块的基础日志记录python日志记录系列教程,内置logging模块(二)——logging日志进阶教程(五大核心组件)本文将在此基础之上介绍日志文件的配置方式。一、日志记录三种配置方式简介开发者可以通过三种方式配置日志记录:(1)使用调用上面列出的配置方法的 Python 代码显式创建记原创 2020-06-08 11:31:43 · 3751 阅读 · 1 评论 -
python日志记录系列教程,内置logging模块(二)——logging日志进阶教程(五大核心组件)
前言:前面的一篇文章介绍了简单的日志记录的一些操作方法,一般都是直接通过使用 logging.xxxx()的方式,这是最简单初步的日志记录,不涉及任何复杂的类和对象,但是logging日志记录本是一个非常复杂的东西,里面还会涉及到很多的概念与类,比如:记录器、处理程序、过滤器和格式化程序等概念,涉及到的类有Logger类、Handler类、Formatter类、Filter类、LogRecord类、LogAdapter类等,本文将会深入探讨它们的机制与使用方法。本篇为系列文章的第二篇。一、日志记录的核.原创 2020-06-08 11:08:03 · 2940 阅读 · 0 评论 -
python日志记录系列教程,内置logging模块(一)——直接使用logging模块的基础日志记录
前言:成熟的软件开发不可避免的要进行日志记录,python内置模块logging提供了强大的日志记录能力,本文将从多个角度,由浅入深的介绍logging的常见使用方法和一些基本概念,本此系列文章分为两篇,本文为系列文章第一篇,介绍实用logging模块进行基本的日志记录操作。本文主要都是直接使用 logging.xxxx()的方式,这是最简单初步的日志记录,不涉及任何复杂的类和对象,这些将会在下一篇文章中来说明。一、什么是日志记录所谓的日志记录就是对软件执行时所发生事件的一种追踪方式。软件开发人员.原创 2020-06-05 16:33:56 · 3813 阅读 · 1 评论 -
python字符串格式化深入详解(四种方法)
前言:本文详细整理了python字符串格式化的几种方式。一、使用 % 符号来进行格式化格式符为真实值预留位置,并控制显示的格式。格式符可以包含有一个类型码,用以控制显示的类型,如下:%s 字符串 (采用str()的显示)%r 字符串 (采用repr()的显示)%c 单个字符%b 二进制整数%d 十进制整数%i 十进制整数%o...原创 2020-04-21 11:05:11 · 56268 阅读 · 9 评论 -
深入详解python高级特性——函数柯里化(Currying)与反柯里化
前言:本章的内容本来很简单,但是涉及到的理论部分相对较多,想要彻底弄懂前因后果需要具备以下几个知识点,(1)python的高阶函数(2)python的装饰器本质(3)Python的functools模块里面的偏函数的本质这三块类容我在之前的文章中已经有详细说明了,不再赘述,可以参考下面的连接中的文章:博客专栏分类,关于Python的各种高级特性都有说明关于functoo...原创 2020-06-03 17:23:18 · 6261 阅读 · 2 评论 -
jupyter notebook高级教程系列——slide幻灯片制作
声明:前面已经详细讲解了ipython、jupyter notebook的使用、配置等内容,本文作为补充篇继续讲解jupyternotebook。本文主要由两个部分组成,jupyter notebook的常用菜单介绍、使用jupyter notebook制作幻灯片。所以一些关于如何启动,如何安装的基础教程这里就不再重复说明了。有需要的可以参考我前面的文章,链接如下:史上最详细、最完全的...原创 2018-12-18 13:25:53 · 14985 阅读 · 4 评论 -
python高级编程——描述符Descriptor详解(补充篇)——python描述符实现一些底层高级功能
本文声明:python的描述符descriptor,这是属于python高级编程的一些概念和实现方法,可能有很多的小伙伴还并没有用到过,但是在Python的面试过程中有可能会出现,究竟什么是python描述符,有什么作用,使用有什么意义,它的诞生背景是什么,很少有文章专门介绍这一块,有的文章介绍的太过粗浅,以至于看过之后依然不能够理解描述符的本质。鉴于此,我寻思着出一期专门讲解python...原创 2018-12-10 14:47:33 · 1319 阅读 · 0 评论 -
python协程系列(三)——yield from原理详解
声明:本文将详细讲解python协程的实现机理,为了彻底的弄明白它到底是怎么一回事,鉴于篇幅较长,将彻底从最简单的yield说起从最简单的生成器开始说起,因为很多看到这样一句话的时候很懵,即“yield也是一种简单的协程”,这到底是为什么呢?本次系列文章“python协程系列文章”将从最简单的生成器、yield、yield from说起,然后详细讲解asyncio的实现方式。本文主要讲解什...原创 2018-12-26 14:45:28 · 20842 阅读 · 7 评论 -
python协程系列(一)——生成器generator以及yield表达式详解
声明:本文将详细讲解python协程的实现机理,为了彻底的弄明白它到底是怎么一回事,鉴于篇幅较长,将彻底从最简单的yield说起从最简单的生成器开始说起,因为很多看到这样一句话的时候很懵,即“yield也是一种简单的协程”,这到底是为什么呢?本次系列文章“python协程系列文章”将从最简单的生成器、yield、yield from说起,然后详细讲解asyncio的实现方式。本文主要讲解P...原创 2018-12-24 13:27:49 · 4804 阅读 · 14 评论 -
python协程系列(二)——python协程的通俗理解以及使用yield关键字实现协程
声明:本文将详细讲解python协程的实现机理,为了彻底的弄明白它到底是怎么一回事,鉴于篇幅较长,将彻底从最简单的yield说起从最简单的生成器开始说起,因为很多看到这样一句话的时候很懵,即“yield也是一种简单的协程”,这到底是为什么呢?本次系列文章“python协程系列文章”将从最简单的生成器、yield、yield from说起,然后详细讲解asyncio的实现方式。本文主要...原创 2018-12-24 15:55:57 · 8773 阅读 · 3 评论 -
python标准库系列教程(五)——unittest库单元测试 (上篇)
声明:前面的python标准库系列文章详细讲解了Python的三大函数式编程库以及集合库,itertools、functools、operators库以及collections库,本文继续python标准库系列文章,本文为第五篇,深入详解python的单元测试原理以及unittest的基本架构,鉴于篇幅较长,第五篇将分为几个小的篇章说明,本文为上篇,后续还会有系列文章更新,希望对小伙伴有所...原创 2019-01-04 17:04:28 · 2987 阅读 · 0 评论 -
python协程系列(五)——asyncio的核心概念与基本架构
声明:本文针对的是python3.4以后的版本的,因为从3.4开始才引入asyncio,后面的3.5 3.6 3.7版本是向前兼容的,只不过语法上面有稍微的改变。比如在3.4版本中使用@asyncio.coroutine装饰器和yield from语句,但是在3.5以后的版本中使用async、await两个关键字代替,虽然语法上稍微有所差异,但是原理是一样的。本文用最通俗的语言解释了pyt...原创 2019-01-15 09:35:53 · 12124 阅读 · 10 评论 -
python高级调试技巧(一)——原生态的pdb调试
声明:本文所讲的调试是指不附带任何工具的调试,我们平时使用vs code,pycharm进行调试,包括设置断点、单步执行、多步执行等操作都是IDE设置好的,本文不考虑这些,使用原生态的python调试器,不需要任何IDE开发环境。pdb是python自带的调试器,是python debugger 的简称。使用pdb调试有两种方式。本次文章依然是分为系列文章进行讲解,本文为系列文章第一篇...原创 2019-01-02 15:53:28 · 9772 阅读 · 1 评论 -
python高级编程——描述符Descriptor详解(下篇)——python描述符三剑客详解
本文声明:python的描述符descriptor,这是属于python高级编程的一些概念和实现方法,可能有很多的小伙伴还并没有用到过,但是在Python的面试过程中有可能会出现,究竟什么是python描述符,有什么作用,使用有什么意义,它的诞生背景是什么,很少有文章专门介绍这一块,有的文章介绍的太过粗浅,以至于看过之后依然不能够理解描述符的本质。鉴于此,我寻思着出一期专门讲解python...原创 2018-12-07 15:57:49 · 2665 阅读 · 4 评论 -
一文详解“抽象工厂模式”以及python语言的实现
一、什么是“抽象工厂模式”——Abstract Factory Pattern其实所谓的抽象工厂模式,是在前面讲解过的“简单工厂模式”、“工厂方法模式”的基础之上进行扩充的。回忆前面的这两种模式,我们可以得出:工厂模式:针对一个系列的类(比如Circle、Rectangle、Ellipse、Triangle),它们有很多的共同点,很多书籍或者是文章将他们称之为一个系列的产品,通俗的...原创 2018-11-20 11:11:37 · 2994 阅读 · 3 评论 -
一文带你看懂卷积神经网络(CNN)让你意想不到的10创新idea
全文摘要卷积神经网络(CNN)可以说是深度学习发展的一个缩影,特别是现在在计算机视觉方面已经得到了非常成熟的应用,在目标检测、目标追踪等方面也是独领风骚,本文将讲述卷积神经网络近些年来的发展历程,以及它到底创新在什么地方。本文略长,看完大约30min。卷积神经网络的十大概念与创新 1、Group convolution 卷积只能在同一组进行吗?答案当然是能!...原创 2018-11-20 11:26:43 · 6093 阅读 · 0 评论 -
史上最详细、最完全的jupyter notebook使用教程,Python使用者必备!——ipython系列之三
一、什么是jupyter1、简介:jupyter notebook是一种 Web 应用,能让用户将说明文本、数学方程、代码和可视化内容全部组合到一个易于共享的文档中。它可以直接在代码旁写出叙述性文档,而不是另外编写单独的文档。也就是它可以能将代码、文档等这一切集中到一处,让用户一目了然。Jupyter这个名字是它要服务的三种语言的缩写:Julia,PYThon和R,这个名字与“...原创 2018-11-24 18:01:04 · 259125 阅读 · 33 评论 -
Python高级编程——装饰器Decorator详解(下篇)(绝对是我见过最详细的的教程,没有之一哦)
声明:此文章为,python装饰器详解——下篇,上一篇文章中,即详解装饰器——中篇 ,已经详细讲解了两大类装饰器,即函数装饰器、类装饰器的应用实例,并且分析了它们在运行的过程中的本质,给出了类装饰器的一般模板,本文将以实际例子为依托,讲解剩下的两个类容(闭包和装饰器的嵌套),其中,闭包是重点,包括闭包的诞生背景,闭包的定义、作用、与装饰器的关系与区别。该系列文章共分为 上、中、下 三篇。此...原创 2018-11-29 16:07:00 · 1297 阅读 · 2 评论 -
Python高级编程——装饰器Decorator详解(补充篇)(关于多层装饰器,装饰器嵌套)
声明:此文章为,python装饰器详解——补充篇,上一篇文章中,即详解装饰器——下篇 ,已经详细讲解了闭包,闭包是重点,包括闭包的诞生背景,闭包的定义、作用、闭包的本质、与装饰器的关系与区别。该系列文章共分为 上、中、下、补充 四篇。此为第四篇。本文主要讲解python的多层装饰器的定义、它们的运行过程、本质分析、多层装饰器的应用等内容。一、装饰器的运行过程前面虽然已经讲解了pyt...原创 2018-11-30 16:08:34 · 2181 阅读 · 1 评论 -
python高级编程——描述符Descriptor详解(上篇)——python对象的属性访问优先级与属性的控制与访问)
本文声明:python的描述符descriptor,这是属于python高级编程的一些概念和实现方法,可能有很多的小伙伴还并没有用到过,但是在Python的面试过程中有可能会出现,究竟什么是python描述符,有什么作用,使用有什么意义,它的诞生背景是什么,很少有文章专门介绍这一块,有的文章介绍的太过粗浅,以至于看过之后依然不能够理解描述符的本质。鉴于此,我寻思着出一期专门讲解python...原创 2018-12-03 15:17:59 · 1706 阅读 · 0 评论 -
python高级编程——闭包(lexical closure)深入详解(绝对是我见过最详细的的教程,没有之一哦)
声明:此文章为,python装饰器详解——下篇,上一篇文章中,即详解装饰器——中篇 ,已经详细讲解了两大类装饰器,即函数装饰器、类装饰器的应用实例,并且分析了它们在运行的过程中的本质,给出了类装饰器的一般模板,本文将以实际例子为依托,讲解剩下的两个类容(闭包和装饰器的嵌套),其中,闭包是重点,包括闭包的诞生背景,闭包的定义、作用、与装饰器的关系与区别。该系列文章共分为 上、中、下 三篇。此...原创 2018-11-30 16:21:27 · 1850 阅读 · 0 评论 -
Python高级编程——装饰器Decorator详解(中篇)(绝对是我见过最详细的的教程,没有之一哦)
声明:此文章为,python装饰器详解——中篇,上一篇文章中,即详解装饰器——上篇 ,已经详细讲解了装饰器诞生的背景,装饰器的定义、作用、应用场景,本文将以实际例子为依托,深入详解装饰器的各类实现(包括函数装饰器、类装饰器、闭包、装饰器的嵌套四大块内容)系列文章共分为 上、中、下 三篇。此为第二篇。一、函数装饰器前面提到过,装饰器分为函数装饰器、类装饰器,本节详细解释函数装饰器,又...原创 2018-11-28 16:02:10 · 1986 阅读 · 0 评论 -
python高级编程——描述符Descriptor详解(中篇)——python对象的属性访问优先级与属性的控制与访问)
本文声明:python的描述符descriptor,这是属于python高级编程的一些概念和实现方法,可能有很多的小伙伴还并没有用到过,但是在Python的面试过程中有可能会出现,究竟什么是python描述符,有什么作用,使用有什么意义,它的诞生背景是什么,很少有文章专门介绍这一块,有的文章介绍的太过粗浅,以至于看过之后依然不能够理解描述符的本质。鉴于此,我寻思着出一期专门讲解python...原创 2018-12-06 14:43:56 · 1177 阅读 · 0 评论 -
python标准库系列教程(五)——unittest库单元测试 (中篇)
声明:前面的python标准库系列文章详细讲解了Python的三大函数式编程库以及集合库,itertools、functools、operators库以及collections库,本文继续python标准库系列文章,本文为第五篇,深入详解python的单元测试原理以及unittest的基本架构,鉴于篇幅较长,第五篇将分为几个小的篇章说明,本文为下篇,后续还会有系列文章更新,希望对小伙伴有所...原创 2019-01-07 15:04:20 · 556 阅读 · 0 评论 -
python标准库系列教程(五)——unittest库单元测试 (下篇)
声明:前面的python标准库系列文章详细讲解了Python的三大函数式编程库以及集合库,itertools、functools、operators库以及collections库,本文继续python标准库系列文章,本文为第五篇,深入详解python的单元测试原理以及unittest的基本架构,鉴于篇幅较长,第五篇将分为几个小的篇章说明,本文为下篇,后续还会有系列文章更新,希望对小伙伴有所...原创 2019-01-09 14:47:26 · 568 阅读 · 0 评论 -
anaconda中关于conda命令的一些注意事项
前言:前面有文章专门讲解了conda的相关配置,请参考:conda安装和pip安装的国内镜像配置一、包管理功能(1)搜索包查看特定包conda search fastqc(2)安装包安装特定包(需要确认安装,可以看到conda已经将包依赖问题,环境问题已经解决)conda install fastqc(3)安装特定版本的软件包(查看软件版本可以使用conda...原创 2019-07-29 14:19:48 · 2807 阅读 · 0 评论 -
linux下安装python3完整教程(依赖环境gcc,make,cmake,configure等详细解释)
前言:python在linux环境下面没有安装包,只支持从源码安装,本文不仅仅会完整的演示安装步骤,还会解释每一步这么做的原因以及一些关键概念的理解,包括什么是make等。本文基于centos7的KDE桌面版,安装python3.6.9版本。一、安装依赖环境1.1 安装依赖环境sudo yum install -y gcc make cmake zlib-devel bzi...原创 2019-08-31 10:32:30 · 19483 阅读 · 6 评论 -
python导入的模块搜索顺序详解(python import搜寻模块的机制详解)
前言:本文会以windows和Linux两个平台之下进行说明,python的模块导入的搜索顺序是怎样的。一、导入模块的搜索顺序:(1)首先导入内建模块。首先判断这个module是不是built-in即内建模块,如果是内建模块则引入内建模块,如果不是则在一个称为sys.path的list中寻找;(2)在sys.path返回的列表中寻找。sys.path在python脚本执行时动态生成...原创 2019-09-05 11:17:45 · 14743 阅读 · 0 评论 -
关于python手动寻找模块和包的相关问题(pip与conda)
前言:有时候我们直接通过pip和conda安装某一个python包的时候,可能会遇到下载速度很慢的问题,如果我们可以实现手动下载下来,再安装就会快很多,本文主要讲如何找的pip以及conda安装的包到底放在哪个地方的呢?知道地方了就方便手动下载了。一、pip安装这个很简单如下:pip install torch==1.1.0Collecting torch==1.1.0 D...原创 2019-09-06 17:42:12 · 561 阅读 · 0 评论 -
linux在非root用户之下安装多个版本的CUDA和cudnn,并且自由切换
前言:前面讲解过Windows下面如何安装多个不同版本的CUDA,参考:windows下同一个显卡配置多个CUDA工具包以及它们之间的切换普通用户不使用sudo安装多个版本CUDA和cuDNN确定安装的软件版本下载CUDA Toolkit下载cuDNN安装CUDA配置cuDNN配置用户环境变量安装多个版本的CUDA,然后在不同的CUDA版本之下进行切换。一、确定安装的软件版...原创 2019-09-08 17:36:05 · 8398 阅读 · 1 评论 -
python常见的两种命令行使用(argparse和tensorflow)
前言:本文介绍python中两种常见的命令行处理方法,一种是通过argparse库来实现,一种是使用tensorflow来实现。一、argparse库实现命令行参数1.1 定义参数的方法import argparseparser = argparse.ArgumentParser(description='some description') # 定义一个 parser 对...原创 2019-09-26 15:23:56 · 1661 阅读 · 0 评论 -
.NET 爱python——pythonnet模块使用
前言:如何更好地进行python与.NET之间的交互式编程?在之前,我们常常使用IronPython,在.NET平台上使用python开发,但是IronPython只支持python2.7版本,而且不在维护,pythonnet提供了一个更好的解决方案,它提供了二者的交互,可以在编写python的时候与C#交互,调用C#,也可以在编写.NET的时候,将python代码嵌入在C#里面。详细信息...原创 2019-10-07 15:09:53 · 18839 阅读 · 0 评论 -
python进度条神器之tqdm包的使用
前言:在Python开发中,我们经常需要使用进度条来展示任务进行的进度到哪里了,特别是在机器学习与深度学习框架里面,tqdm包是一个非常简单但是功能强大的进度条处理工具,一起来看看它的一些基本用法吧!一、tqdm的安装与导入1.1 安装pip install tqdm1.2 导入from tqdm import tqdm后面的这个tqdm是一个类,前面的tqd...原创 2019-07-11 17:33:19 · 16253 阅读 · 0 评论 -
python高级调试技巧(二)——原生态的pdb调试的细节补充
前言:我前面专门写过关于使用python原生调试器的文章,但是缺少一个实例来说明,本文将在之前的基础之上来继续说明python原生pdb里面的一些问题,一些最基础的东西这里就不再说明了,主要是对前面文章的补充。参见:https://mp.weixin.qq.com/s/59A7ycVa7BUUV4Onmum8Dg一、实例代码如下:# python_pdb.py 文件名im...原创 2019-07-05 15:27:33 · 2598 阅读 · 1 评论 -
python协程系列(四)——同步/异步、并发/并行、线程/进程
声明:后面会不断穿插这样的一些概念,一定要深入理解一些关键的基本思想。这些基本概念很多的参考资料参差不齐,讲解不是很清楚,本章将详细,用最通俗易懂的语言解释,什么是线程、进程、同步、异步、阻塞、非阻塞、并发、并行这些很容易弄混的概念,本次的系列文章较长,后续会讲解python协程的实现方式。看完本文,你讲明白一下一些基本的东西:(1)并发(并发只是实现异步的手段之一)并不是没有阻塞的,...原创 2019-01-10 10:37:16 · 6142 阅读 · 6 评论 -
python协程系列(六)——asyncio的EventLoop以及Future详解
声明:python协程系列文章的上一篇,即第五篇,详细介绍了asyncio的核心概念,asyncio的设计架构,Task类的详细作用,本文为系列文章的第六篇,将介绍更加底层的API,以EventLoop和Future为主,介绍他们的设计理念,包含的方法以及使用技巧。一、事件循环EventLoop事件循环是asyncio的核心,异步任务的运行、任务完成之后的回调、网络IO操作、子进程...原创 2019-01-21 14:37:00 · 27234 阅读 · 8 评论 -
python协程系列(七)——asyncio结合多线程解决阻塞问题以及timer模拟
声明:python协程系列文章的上一篇,即第六篇,详细介绍了asyncio的几个底层API概念,asyncio的事件循环EventLoop,Future类的详细使用,以及集中回答了关于异步编程的一些疑问,本文为系列文章的第七篇,将介绍如何使用多线程结合异步编程asyncio,开发出真正“不假死”的应用程序;以及如何模拟一个timer,实现定时操作。一、异步方法依然会假死(freezin...原创 2019-01-23 14:11:00 · 21368 阅读 · 17 评论 -
tensorflow1.9个人学习笔记
一、神经网络的一般训练步骤#一、训练网络的一般步骤forepochinrange(epochs):batch_count=int(num_example/batch_size)foriinrange(batch_count):opti,summary,loss,acc=sess.run([optimizer,merge,cost,a...原创 2019-03-12 10:31:48 · 1100 阅读 · 0 评论 -
conda安装和pip安装的国内镜像配置
一、conda安装anaconda是一个非常流行的包管理软件,我个人尤其爱好,但是有一个问题就是它所有的软件包全部在国外,安装起来很麻烦,关键是下载速度慢,而且经常中断,所以需要配置国内安装的镜像,下载速度就很快了。1.1 conda的配置文件config如果用户从来没有使用过conda config 命令,就不会有配置文件,当用户第一次运行conda config命令时,将...原创 2019-04-12 15:23:03 · 40025 阅读 · 1 评论