python
文章平均质量分 62
secular_
这个作者很懒,什么都没留下…
展开
-
Python杂记:列表生成
1.方式一使用[ ]来生成1.1生成1行1列的空列表1.2生成m行n列的全0列表2.方式二使用list()来生成1.1生成1行1列的空列表1.2list()用于类型转换将string转换为单个字符组成的list将tuple转换成list还可以对iterator进行转换(map()函数返回的是一个迭代器)3.二者比较空括号方式更加直观简单且运行快,但是功能比较局限,不能进行类型转换。而list()花费时间较长,通常用于类型转换这...原创 2021-10-16 17:12:52 · 1573 阅读 · 0 评论 -
十大排序算法总结及Python实现
1、冒泡排序1.1 思路概述以升序排序为例,依次对未排序部分两两比较,元素大的放后面,元素小的放前面。每一轮下来,未排序中最大的元素会被冒到未排序区域的最后一个位置,每一轮都会确定当前最大元素的最终位置,该元素确定后,就会从未排序元素中剔除。如果其中某一轮,没有发生元素交换,说明整个未排序数组都已经有序,则完成排序。1.2复杂度分析最好的情况是已经有序,则一轮结束,时间复杂度为O(n).最坏情况是逆序排序,则共需要经过n轮排序,每次复杂度为O(n),故时间复杂度为O(n^2).由于是就地..原创 2021-09-16 18:04:49 · 693 阅读 · 0 评论 -
解决jupyter notebook上pip install成功却无法import的问题
由于使用anaconda下激活的环境是python38后打开的jupyter,所以在jupyternotebook使用!pip install XXX后安装的包的路径都是在对应环境下。但是对包进行import的时候,查找的路径是jupyter默认的kernel而非激活的环境。可以安装nb_conda_kernels包来解决,使得在jupyter下new的文件的kernel可以和环境对应。(红色部分是使用命令以前,蓝色是使用命令以后的)安装命令为:conda install ...原创 2021-04-22 18:25:42 · 2580 阅读 · 1 评论 -
通俗易懂SVM原理介绍,适合小白食用
11原创 2021-01-12 10:55:29 · 5093 阅读 · 3 评论 -
jupyter notebook对多行代码同时添加前缀或者删除前缀(另附gif动图制作法)
这个功能虽然比较鸡肋,也比较少应用场景,但是好玩呀!在jupyter notebook中,将光标移到代码前面上,长按Alt,直到出现光标(十字形),然后鼠标按住下移,光标会延长,直到涵盖所有需要的代码。再添加或删除内容即可。如图:可以用来对多行代码添加注释,但是一般用Ctrl+/会比较快hhhh对于编写重复部分代码还是可以用上的,省去了复制粘贴。另外附上gif生成:https://www.cockos.com/licecap/下载完成以后会得到一个中空的窗口,类似一个相框,可原创 2020-10-19 14:27:00 · 5245 阅读 · 0 评论 -
解决csv.reader迭代器只能迭代一次的问题
在做项目过程中,需要对同一个CSV文件进行两次迭代,但是在第二次迭代时候,输出为空。这里用一个小例子表示:对这个简单的csv文件迭代第一次:迭代第二次:可以看到,第二次迭代的时候,输出为空。检查下迭代器可以发现,迭代器已经指到文件末尾了。这也是为什么第二次输出为空的原因。因此需要对迭代器进行刷新。暴力方式:生成新的迭代器(注意这里的迭代器指的是csv.reader,而不是item_t,因此如果只是将item_t改成如item_tt之类的是不起作用的。)在网原创 2020-10-18 21:37:19 · 2105 阅读 · 0 评论 -
python中小数点后取2位(四舍五入)以及取2位(四舍五不入)的方法总结
在很多场景的计算中,最终得到的数值例如123.45678,要截取2位小数得到123.45,而不是默认的四舍五入方法得到123.46,如何实现呢?文章目录 一.小数点后取2位(四舍五入)的方法 方法一:round()函数 方法二:'%.2f' %f 方法 方法三:Decimal()函数 二.小数点后取2位(四舍五不入)的方法 方法一: 一.小数点后取2位(四舍五入)的方法方法一:roun...转载 2020-10-12 12:38:34 · 6448 阅读 · 1 评论 -
python判断变量类型(是否为int、字符串、列表、元组、字典等方法)
#!/usr/bin/env pythona = 1b = [1,2,3,4]c = (1,2,3,4)d = {'a':1,'b':2,'c':3}e = "abc"if isinstance(a,int): print "a is int"else: print "a is not int"if isinstance(b,list): print "b is list"else: print "b is not list"if isinstance(.转载 2020-10-12 12:29:02 · 3527 阅读 · 1 评论 -
Markdown修改字体大小、字体、背景色等操作
本文介绍 CSDN-markdown 借助 html 实现文字样式设置,包括字体、大小、颜色、高亮和底色。点击这里跳转到文末的颜色列表。 Markdown通过简单标记语法,使普通文本内容具有一定格式。但它本身不支持修改字体、字号与颜色等功能的。CSDN-markdown编辑器是其衍生版本,支持基于 PageDown ( Stack Overflow)所使用的编辑器的扩展功能(如表格、脚注、内嵌HTML、内嵌 LaTeX 等等)。文字样式1(内嵌HTML)Size:规定文本的尺寸大小,取值从..转载 2020-10-11 21:12:19 · 3428 阅读 · 0 评论 -
Python中的浅拷贝(shallow copy)与深拷贝(deep copy)
先举个非常常见的例子:importcopylist1=[1,2,3,['a','b']]list2=list1list3=copy.copy(list1)list4=copy.deepcopy(list1)list1.append(5)list1[3].append('c')print'list1:',list1print'list2:',list2print'list3:',list3print'list4:',list4...转载 2020-10-11 21:09:17 · 1110 阅读 · 0 评论 -
python调用MATLAB库绘制直方图
直方图(histogram)虽然在样式上类似条形图,但它们的作用不一样。直方图用不同的矩形表示频数,常用来观察一组数据的概率分布。在直角坐标中,用横轴表示数据分组,纵轴表示频数或频率,各组与相应的频数就形成了一个个矩形,即直方图。画直方图用到 pyplot 中的 hist 函数,它的基本语法为:[n, bins, patches] = hist(x, [bins], **kwargs)输入值:x 数组,需要绘制直方图的数值 [bins] 可选参数,数据的组数,若不指定则转载 2020-09-29 11:35:48 · 1543 阅读 · 0 评论 -
解决:jsonschema 3.2.0 has requirement six>=1.11.0, but you‘ll have six 1.10.0 which is incompatible
ERROR: jsonschema 3.2.0 has requirement six>=1.11.0, but you'll have six 1.10.0 which is incompatible.解决方法>>>pip install six --user -UCollecting six Downloading six-1.15.0-py2.py3-none-any.whl (10 kB)Installing collected packages: six.原创 2020-08-13 10:31:28 · 2744 阅读 · 0 评论 -
Jupyter Notebook中设置“智能自动补全代码”功能
下载 jupyter-tabnine pip install jupyter-tabnine 安装 jupyter-tabnine jupyter nbextension install --py jupyter_tabnine 启动 jupyter-tabnine jupyt...转载 2020-08-13 10:28:22 · 3138 阅读 · 0 评论 -
SyntaxError: (unicode error) ‘unicodeescape’ codec can’t decode bytes in position 2-3: truncated \UX
SyntaxError: (unicode error) ‘unicodeescape’ codec can’t decode bytes in position 2-3: truncated \UXXXXXXXX escape输入:f = open('C:\Users\Mr.LongKj\Desktop\stats2\result.txt','w')报错:SyntaxError: (unicode error) ‘unicodeescape’ codec can’t decode.转载 2020-08-13 09:43:34 · 731 阅读 · 0 评论 -
使用Pandas遇到Initializing from file failed错误
使用pandas读取文件遇到:OSError: Initializing from file failed此类报错一般是由于引用的路径中存在中文,有两种修改方式:1、直接了当且一劳永逸的就是把文件名改成英文2、实在不想改成英文也可以试试以下方法:将代码f = pd.read_csv('中文.csv')改为f = open('中文.csv')d = pd.read_csv(f)...原创 2020-08-13 09:41:38 · 2749 阅读 · 0 评论 -
python的三种导入模块/函数方式
core.py的内容如下:# -*- coding: utf-8 -*-import osdef getCurrentDir(): return os.path.split(os.path.abspath(__file__))[0]现在我们要在入口文件main.py中导入core.py中的函数,在main.py中调用方法如下:第一种:直接导入,三级调用# -*- coding: utf-8 -*-import inc.coreif __name__ == '__...转载 2020-08-12 18:05:42 · 3223 阅读 · 2 评论 -
Python与数据科学实战课程——第三章Pandas:谈一谈NaN
import numpy as npimport pandas as pdfrom pandas import Series,DataFramen = np.nannnantype(n)float任何数据类型 不管是int还是float 和nan做运算后得到的结果都是nanm = 1m + n nanNaN in seriess1 = Series([1,2,np.nan,3,4],index=["A","B","C","D","E"])s1A原创 2020-08-12 17:46:05 · 713 阅读 · 1 评论 -
Python与数据科学实战课程——第三章Pandas:多级index
import numpy as npimport pandas as pdfrom pandas import Series,DataFrame创建多级index的seriess1 = Series(np.random.randn(6))s10 0.0011501 -0.0198202 0.9227083 0.6564684 -0.7191095 0.957127dtype: float64s1 = Series(np.random.randn(原创 2020-08-12 17:42:20 · 720 阅读 · 1 评论 -
Python与数据科学实战课程——第三章Pandas:Mapping 与 Replace
import numpy as npimport pandas as pdfrom pandas import Series,DataFrame#create a dataframedf1 = DataFrame({"城市":["北京","上海","广州"],"人口":[1000,2000,1500]})df1 人口 城市 GDP 0 1000 北京原创 2020-08-12 17:37:55 · 990 阅读 · 1 评论 -
Python与数据科学实战课程——第三章Pandas:Reindexing Series and DataFrame
import numpy as npimport pandas as pdfrom pandas import Series,DataFrameSeries reindexs1 = Series([1,2,3,4],index=["A","B","C","D"])s1A 1B 2C 3D 4dtype: int64s1.reindex(index=["A","B","C","D","E"])A 1.0B 2.0C 3.0D原创 2020-08-12 17:33:40 · 677 阅读 · 0 评论 -
Python与数据科学实战课程——第三章Pandas:Dataframe_IO
import numpy as npimport pandas as pdfrom pandas import Series,DataFrame读写到粘贴板中import webbrowserlink = "http://pandas.pydata.org/pandas-docs/version/0.20/io.html"webbrowser.open(link)Truedf1 = pd.read_clipboard()df1 For原创 2020-08-12 17:25:20 · 766 阅读 · 0 评论 -
如何在jupyter-notebook中导入图片
一、通过HTML方式插入本地图片使用<img src>语句插入本地图片,其中src为图片路径,可以是相对路径或绝对路径。<img src="./jupyter_logo.png", width=320, heigth=240>上述语句为插入当前目录下名为“jupyter_logo.png”的图片,宽度设为320, 高度设为240。如果不指定维度,则为原图大小。插入网络图片<img src>语句同样可以插入网络图片。<i...转载 2020-08-10 16:55:22 · 10275 阅读 · 3 评论 -
Python与数据科学实战课程——第三章Pandas:深入理解series和dataframe
import numpy as npimport pandas as pdfrom pandas import Series, DataFramedata = {"Country":["Belgium","India","Brazil"], "Capital":["Brussels","New Delhi","Brasilia"], "Population":[11190846,130317135,207847528]}Seriess1 = pd.Series(d原创 2020-08-09 11:53:08 · 783 阅读 · 1 评论 -
Python与数据科学实战课程——第三章pandas:Dataframe
import numpy as npimport pandas as pdfrom pandas import Series,DataFrame生成DataFrameimport webbrowserlink ="https://www.tiobe.com/tiobe-index/"webbrowser.open(link) #打开一个网站,并从该网站中复制数据Truedf = pd.read_clipboard() #从粘贴板中获取数据并解析,转换成个dataframedf原创 2020-08-09 11:48:41 · 744 阅读 · 0 评论 -
Python与数据科学实战课程——第三章Pandas:Series
import numpy as npimport pandas as pd1.生成series1.1使用列表生成seriess1 = pd.Series([1,2,3,4]) s1 #series 包含两部分内容 索引和内容0 11 22 33 4dtype: int64s1.valuesarray([1, 2, 3, 4], dtype=int64)s1.indexRangeIndex(start=0, stop=4, step=1)原创 2020-08-09 11:45:06 · 878 阅读 · 0 评论 -
Python与数据科学实战课程——第二章numpy:array的input和output
使用pickle序列化numpy array,将其序列化到硬盘上(存储为文件与读出文件)import pickleimport numpy as npx = np.arange(10)xarray([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])f = open("x.pkl","wb")pickle.dump(x,f)import osroot = os.getcwd() #获取当前路径print(root)# os.walk() 用于在目录树中游走输出目录中的文件原创 2020-08-09 11:42:05 · 878 阅读 · 0 评论 -
Python与数据科学实战课程——第二章numpy:数组与矩阵运算
快速创建数组import numpy as np#使用random生成随机数组(随机的意思是同一行代码每次运行结果都会不同)np.random.randn(10) #生成的是长度为10的一维数组,数组的元素符合标准正态分布array([-2.01407771, -0.77011376, 0.48240321, 0.52711222, 1.87221082,0.28280583, 0.89647812, -0.07944895, -0.10669309, -0.02220787])原创 2020-08-07 16:59:49 · 814 阅读 · 0 评论 -
Python与数据科学实战课程——第二章numpy:数组创建和访问
数组的创建和访问import numpy as np第一种创建数组的方法创建一维数组# create from python listlist_1 = [1,2,3,4]list_1[1, 2, 3, 4]array_1 = np.array(list_1)array_1array([1, 2, 3, 4])创建二维数组list_2 = [5,6,7,8]array_2 = np.array([list_1, list_2])array_2array([[1原创 2020-08-07 16:48:36 · 780 阅读 · 0 评论 -
Python与自然语言处理 笔记二
第二章获得文本语料和词汇资源什么是有用的文本语料和词汇资源?怎么获取?哪些Python结构适合这个工作?怎么编写代码可以避免重复工作获取文本语料库古腾堡语料库1、查看语料库 nltk.corpus.gutenberg.fileids()>>> import nltk>>> nltk.corpus.gutenberg.fileids()['austen-emma.txt', 'austen-persuasion.t...原创 2020-08-05 23:22:35 · 1985 阅读 · 0 评论 -
Python与自然语言处理 笔记一
第一章节:语言处理与Python安装nltk并获取所需要的数据,数据在book里(nltk_data的一部分)。>>>import nltk>>>nltk.download()python3版本在这里会报错。解决方案:1、手动下载nltk.data2、修改弹出程序的Serverindex点击file,change server index 原有的Serverindex换成 “http://www.nltk.org/nltk_...原创 2020-08-03 21:44:01 · 851 阅读 · 1 评论 -
python2的编码问题
在Windows的cmd中,Python2是以gb2312编码,可以使用而encode方法是将Unicode编码变成指定编码,故若设s="我用python"s.encode(utf-8)就会出错,需要先将s decode成Unicode再encode成utf-8才行。即s.decode(gb2312).encode(utf-8)而在python3中,由于默认是使用U...原创 2019-08-14 17:00:09 · 137 阅读 · 0 评论 -
同时有python2、python3 使用pip
或者pip2 install XXX / pip3 install XXX另外直接在cmd中输入pip2或pip3出现错误(No module named pip3/No module named pip2)即调不出来,而其路径又的确在环境变量中,那么很有可能是pip没有更新,更新使用python3 -m pip install --upgrade pip (或pyth...原创 2019-07-09 21:26:54 · 204 阅读 · 0 评论