Python

Python UnicodeEncodeError: 'gbk' codec

使用Python写文件的时候,或者将网络数据流写入到本地文件的时候,大部分情况下会遇到:UnicodeEncodeError:'gbk'codeccan'tencodecharacter'\xa0'inposition...这个问题。网络上有很多类似的文件讲述如何解决这个问题,但是无非就是encode,decode相关的,这是导致该问题出现的真正原因吗?不是的。很多时候,我们使用了decode和encode,试遍了各种编码,utf8,utf-8,gbk,g

系统 2019-09-27 17:48:43 2373

Python

PythonI/O进阶学习笔记_3.2面向对象编程_python的封装

前言:本篇相关内容分为3篇多态、继承、封装,这篇为第三篇封装。本篇内容围绕python基础教程这段:在面向对象编程中,术语对象大致意味着一系列数据(属性)以及一套访问和操作这些数据的方法。使用对象而非全局变量和函数的原因有多个,下面列出了使用对象的最重要的好处。多态:可对不同类型的对象执行相同的操作,而这些操作就像“被施了魔法”一样能够正常运行。封装:对外部隐藏有关对象工作原理的细节。继承:可基于通用类创建出专用类。内容较多,这篇为下篇。Conten

系统 2019-09-27 17:47:25 2373

Python

Python Numpy 实现交换两行和两列的方法

numpy应该是一个和常用的包了,但是在百度查了很久,也没有查到如何交换两列(交换两行的有),所以查看了其他的文档,找到了方法。交换两行比如a=np.array([[1,2,3],[2,3,4],[1,6,5],[9,3,4]]),想要交换第二行和第三行,看起来很简单,直接写代码:importnumpyasnpa=np.array([[1,2,3],[2,3,4],[1,6,5],[9,3,4]])tmp=a[1]a[1]=a[2]a[2]=tmp运行结果

系统 2019-09-27 17:55:52 2372

Python

python 买卖股票的最佳时机 LeetCode No.122

python买卖股票的最佳时机LeetCodeNo.122解法:一、暴力解法二、贪心算法:由于不限制买卖次数,也没有交易费用,就可以是用贪心算法。思路:只要第二天比前一天高,我们就买进,第二天卖掉,就可以赚钱。三、动态规划:根据算法导论这本最权威的书(最难读的一本书)中提到动态规划的四个步骤,第一刻画一个最优解的结构特征,第二递归地定义最优解的值,第三计算最优解的值,通常采用自低向上的方法,第四计算出的信息构造一个最优解(如最长公共子序列中,求出最长的子序

系统 2019-09-27 17:55:40 2372

Python

使用Python将字符串转换为格式化的日期时间字符串

我正在尝试将字符串“20091229050936”转换为“2009年12月29日(UTC)”>>>importtime>>>s=time.strptime("20091229050936","%Y%m%d%H%M%S")>>>prints.strftime('%H:%M%d%B%Y(UTC)')给AttributeError:'time.struct_time'objecthasnoattribute'strftime'显然,我犯了一个错误:时间错了,它是

系统 2019-09-27 17:55:13 2372

Python

python中PS 图像调整算法原理之亮度调整

亮度调整非线性亮度调整:对于R,G,B三个通道,每个通道增加相同的增量。线性亮度调整:利用HSL颜色空间,通过只对其L(亮度)部分调整,可达到图像亮度的线性调整。但是,RGB和HSL颜色空间的转换很繁琐,一般还需要浮点数的运算,不仅增加了代码的复杂度,更重要的是要逐点将RGB转换为HSL,然后确定新的L值,再将HSL转换为RGB,运行速度可想而知是很慢的。要想提高图像亮度线性调整的速度,应该从三方面考虑,一是变浮点运算为整数运算,二是只提取HSL的L部分进

系统 2019-09-27 17:53:55 2372

Python

python 之 xlrd 和 xlwt 模块详解

(参考文章地址:https://www.cnblogs.com/insane-Mr-Li/p/9092619.html)前言:什么是xlrd和xlwt模块?为什么使用这两个模块?(在UI自动化或者接口自动化中数据维护是一个核心,所以此模块非常实用。)怎么使用这两个模块?xlrd模块:python操作Excel主要用到xlrd和xlwt这两个库,其中xlrd是读Excel,xlwt是写excel的库。常用单元格的数据类型:1.empty(空)2.string

系统 2019-09-27 17:53:34 2372

Python

关于更换python版本并安装pycharm及anaconda以后pip出错

前提描述:之前电脑里装的是python3.7.0版本并装了pycharm,之后出于要求改为python3.6.7并安装了anaconda3环境。PATH由之前的C:\Users\admin\AppData\Local\Programs\Python\Python37-32\Lib\site-packages及D:\PyCharm2019.2\venv\Scripts的基础上增加了C:\Anaconda3\Scripts,并更改python路径为C:\Use

系统 2019-09-27 17:52:42 2372

Python

Python基础之循环for、while

forwhile选择使用哪种循环技巧:不知道循环多少次的用while,知道循环多少次的用for能用for不用whileforiin"abc":print(i)第一次:取a存到i里面,然后执行for的代码块第二次:取b存到i里面,然后执行for的代码块第三次:取c存到i里面,然后执行for的代码块foriinrange(5):print(i)ifi==3:continueelse:print(“nobreak”)总结:只要循环体内部没有执行break就会执行

系统 2019-09-27 17:52:37 2372

Python

02-Python创建Excel文档

Python对于自动化办公而言,具有很高的实用价值,它能处理重复性较强的工作。废话不多说,今天进入Python之Excel文档处理系列的第二节:用Python创建Excel表格。分以下几个步骤:1.安装xlwt模块命令行安装:pipinstallxlwtPyCharm安装:参照第一节xlrd的安装方法。2.开始编码(1)导入xlwt库(2)新建一个工作簿(3)往工作簿中添加表格,同时给表格命名,如下:(4)往工作表中坐标为(0,0)的单元格写入数据,保存工

系统 2019-09-27 17:51:48 2372

Python

阿里大学开放 11 门免费 Python 视频课程

Python现在是世界编程语言排名第3,学起来非常容易上手,很多运营、产品的小伙伴都在自学。阿里大学开放了11门免费Python视频课程,从入门语法到爬虫实战,可以说是面面俱到了。Python语言近几年越来越火,语言使用率占比节节攀升。我们知道Python现在稳居世界编程语言前三名,在PYPL语言流行指数上更是稳居第一,可见python的适用范围、受众基础、影响力都非常强大,是非常适合深入研究学习的一门语言。因为Python的普及程度如此高,广大的技术小伙

系统 2019-09-27 17:51:15 2372

Python

MySQL——python交互

与python交互之前我们需要安装一个MySQL的驱动模块Connector,这个驱动模块直接在cmd命令行输入pipinstallmysql.connector安装是否成功可以接着输入python#输入之后,会进入python解释器(前提是python已经配置好了环境变量#导入安装的模块,没有报错即安装成功importmysql.connector进入自己的编辑器(pycharm)首先连接数据库方式:数据库连接1、当前模块直接连接importmysql.

系统 2019-09-27 17:50:55 2372

Python

python实现在目录中查找指定文件的方法

本文实例讲述了python实现在目录中查找指定文件的方法。分享给大家供大家参考。具体实现方法如下:1.模糊查找复制代码代码如下:importosfromglobimportglob#用到了这个模块defsearch_file(pattern,search_path=os.environ['PATH'],pathsep=os.pathsep):forpathinsearch_path.split(os.pathsep):formatchinglob(os.p

系统 2019-09-27 17:54:30 2371

Python

Python程序打包工具py2exe和PyInstaller详解

前言通常执行python程序要有相应的Python环境,但某些特定场景下,我们可能并不愿意这么麻烦的去配置这些环境(比如将写好的脚本发给客户进行操作),如果可以提前将程序打包成Windows平台的.exe文件或者是Linux下的.sh脚本,那么使用起来就会方便很多,py2exe和PyInstaller这两款工具都是干这么个事的,下面以hello.py脚本(代码内容如下)为例进行介绍。age=input("Howoldareyou?\n")print("A:

系统 2019-09-27 17:53:51 2371

Python

python字符串替换re.sub()方法解析

pattern可以是一个字符串也可以是一个正则,用于匹配要替换的字符,如果不写,字符串不做修改。\1代表第一个分组repl是将会被替换的值,repl可以是字符串也可以是一个方法。如果是一个字符串,反斜杠会被处理为逃逸字符,如\n会被替换为换行,等等。repl如果是一个function,每一个被匹配到的字段串执行替换函数。\g<1>代表前面pattern里面第一个分组,可以简写为\1,\g<0>代表前面pattern匹配到的所有字符串。count是patte

系统 2019-09-27 17:52:51 2371