Python基础
梦寐_
这个作者很懒,什么都没留下…
展开
-
python中chr()和ord()函数的用法
Python中经常会获得一些字符串,但是我们在对其进行计算的时候需要先将其转化为整型数。ord()ord()函数就是用来返回单个字符的ascii值(0-255)或者unicode数值()。>>> ord('d')100>>> ord('5')chr()chr()函数是输入一个整数【0,255】返回其对应的ascii符号.>>&g...转载 2019-12-12 13:54:06 · 2656 阅读 · 0 评论 -
Arrow让Python时间处理更美好
Arrow: Better dates & times for Pythonhttps://arrow.readthedocs.io/en/latest/Arrow是一个用于时间处理的python库。它能够一键转化dates、times、timestamps等多种时间格式,而不需要大量import各种时间模块和格式转化函数。十分便捷和人性化,能够极大程度简化你的代码。原生时间操作需要...转载 2019-11-21 19:45:55 · 670 阅读 · 0 评论 -
Python做中文分词
中文分词所谓分词即是将文本序列按完整的意思切分成一个一个的词儿,方便进行下一步的分析(词频统计,情感分析等)。由于英文词与词自带空格作为分隔符,相比于中文分词要简单的多。我们在做中文分词时,需要把词语从一整段话中筛出来,困难之处在于,汉语表达博大精深,一段话往往有不同的切分方法。所幸这不是我们需要担心的,Python中的Jieba库提供了现成的解决方案:import jiebatext=...原创 2019-11-16 22:51:42 · 1467 阅读 · 0 评论 -
Python词云 wordcloud
快速生成词云from wordcloud import WordCloudf = open(filename).read()wordcloud = WordCloud(background_color="white", width=1000, height=860,margin=2).generate(f)import matplotlib.pyplot as pltplt.imsh...原创 2019-11-16 22:02:09 · 312 阅读 · 0 评论 -
chardet库:识别文件的编码格式
chardet库文档:https://chardet.readthedocs.io/en/latest/usage.html模块介绍Chardet:通用字符编码检测器检测字符集范围:ASCII,UTF-8,UTF-16(2种变体),UTF-32(4种变体)Big5,GB2312,EUC-TW,HZ-GB-2312,ISO-2022-CN(繁体中文和简体中文)EUC-JP,SHIFT_J...原创 2019-11-16 14:59:37 · 934 阅读 · 0 评论 -
Python3.7中的Dataclasses
原文链接:https://medium.com/mindorks/understanding-python-dataclasses-part-2-660ecc11c9b8参考:https://linux.cn/article-9974-1.html介绍Dataclasses 是 Python 的类(LCTT 译注:更准确的说,它是一个模块),适用于存储数据对象。你可能会问什么是数据对象?下面...转载 2019-11-13 23:19:48 · 1407 阅读 · 0 评论 -
Python模块: collections
Python作为一个“内置电池”的编程语言,标准库里面拥有非常多好用的模块。比如今天想给大家 介绍的 collections就是一个非常好的例子。基本介绍我们都知道,Python拥有一些内置的数据类型,比如str, int, list, tuple, dict等, collections模块在这些内置数据类型的基础上,提供了几个额外的数据类型:namedtuple(): 生成可以使用名字来...原创 2019-11-12 23:30:50 · 148 阅读 · 0 评论 -
高效的 itertools 模块
补充:itertools库学习库的官网地址:https://docs.python.org/2/library/itertools.html#itertools.permutations迭代器(生成器)在Python中是一种很常用也很好用的数据结构,比起列表(list)来说,迭代器最大的优势就是延迟计算,按需使用,从而提高开发体验和运行效率,以至于在Python 3中map,filter等操作...转载 2019-11-12 14:37:25 · 304 阅读 · 0 评论 -
Python:eval函数
eval()官方文档里面给出来的功能解释是:将字符串string对象转化为有效的表达式参与求值运算返回计算结果语法上:调用的是:eval(expression,globals=None, locals=None)返回的是计算结果其中:expression是一个参与计算的python表达式globals是可选的参数,如果设置属性不为None的话,就必须是dictionary对象了local...转载 2019-11-08 00:20:29 · 204 阅读 · 1 评论 -
Python时间日期操作
Python时间和日期操作需要用到datetime和time标准库模块。一、time模块1.time模块表示时间的方式①时间戳②格式化的时间字符串③以数组的形式表示,即(struct_time),共有九个元素year (four digits, e.g. 1998)month (1-12)day (1-31)hours (0-23)minutes (0-59)seconds...转载 2019-10-29 21:28:41 · 207 阅读 · 0 评论 -
断言assert的用法
assert 断言使用assert断言是个好习惯在没完善一个程序之前,我们不知道程序在哪里会出错,与其让它在运行最崩溃,不如在出现错误条件时就崩溃,这时候就需要assert断言的帮助。assert异常参数:在断言表达式后添加字符串信息,用来解释断言并更好的知道是哪里出了问题assert用法assert 表达式 [, 异常提示字符串]示例如下:assert type(users) =...转载 2019-10-23 22:08:59 · 367 阅读 · 0 评论 -
python虚拟环境 virtualenv、Virtualenvwrapper
python虚拟环境 virtualenv在开发Python应用程序的时候,系统安装的Python3只有一个版本:3.4。所有第三方的包都会被pip安装到Python3的site-packages目录下。如果我们要同时开发多个应用程序,那这些应用程序都会共用一个Python,就是安装在系统的Python 3。如果应用A需要jinja 2.7,而应用B需要jinja 2.6怎么办?这种情况下,...转载 2019-10-23 20:08:29 · 143 阅读 · 0 评论 -
Python标准库——collections模块的Counter类
1.Counter类Counter类的目的是用来跟踪值出现的次数。它是一个无序的容器类型,以字典的键值对形式存储,其中元素作为key,其计数作为value。计数值可以是任意的Interger(包括0和负数)。2.1 创建下面的代码说明了Counter类创建的四种方法:>>> c = Counter() # 创建一个空的Counter类>>> c = ...原创 2019-10-23 11:53:57 · 226 阅读 · 0 评论 -
Python中的魔法函数
想必只要是做Python开发的同学,都会或多或少见到以双下划线开头的方法,这些就是我们经常说的魔法方法。它可以对你的类添加特殊的功能,使用恰当会给我们的开发带来很大的便利。目前我们常见的魔法方法大致可分为以下几类:构造与初始化类的表示访问控制比较操作容器类操作可调用对象Pickling序列化构造与初始化__init__构造方法是我们使用频率最高的魔法方法了,几乎在我们定义...原创 2019-10-21 22:35:28 · 131 阅读 · 0 评论 -
Python的hasattr() getattr() setattr() 函数使用方法
def hasattr(*args, **kwargs): # real signature unknown """ Return whether the object has an attribute with the given name. This is done by calling getattr(obj, name) and catching Attr...原创 2019-10-21 22:23:37 · 457 阅读 · 0 评论 -
创建装饰器时保留函数元信息
问题你写了一个装饰器作用在某个函数上,但是这个函数的重要的元信息比如名字、文档字符串、注解和参数签名都丢失了。解决方案任何时候你定义装饰器的时候,都应该使用functools 库中的 @wraps装饰器来注解底层包装函数。例如:import timefrom functools import wrapsdef timethis(func): ''' Decorator ...转载 2019-10-21 10:33:25 · 352 阅读 · 0 评论 -
python中的位运算符、位运算高级运用
按位运算符是把数字看作二进制来进行计算的。Python中的按位运算法则如下:下表中变量 a 为 60,b 为 13,二进制格式如下:a = 0011 1100b = 0000 1101-----------------a&b = 0000 1100a|b = 0011 1101a^b = 0011 0001~a = 1100 0011位运算高级运用1....转载 2019-10-20 17:19:41 · 345 阅读 · 0 评论 -
Python集合(set)类型
python的set和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素.集合对象还支持union(联合), intersection(交), difference(差)和sysmmetric difference(对称差集)等数学运算.sets 支持 x in set, len(set),和 for x in set。作为一个无序的集合,sets不记录元素位置或者插...原创 2019-10-20 16:06:31 · 213 阅读 · 0 评论 -
Python 字符串 String 内建函数
count(str, start=0, end=len(string)) 函数功能 返回该字符串中出现某字符串序列(或字符)的次数用法 str.count(sub, start=0, end=len(string))参数 sub: 被查找的字符串序列 start: 开始查找的索引位置,默认为字符串开始 end: 结束查找的索引位置,默认为字符串结束返回值 被查找的序列在字符串的...转载 2019-10-20 14:41:14 · 239 阅读 · 0 评论 -
python中对象相等判断(is、==与__dict__的使用)
一、对象的要素python中对象包含三个基本要素,分别是:id(身份标识) 可以理解为c里面的指针或内存位置type(数据类型)value(值)类型:python的基本对象有Number、String、List、Tuple、Set、Dictionary六种,当然还有对象的实例化,他们的类型就是对象的类名。可以通过type(对象)来获取>>>a1=1>&...转载 2019-10-20 11:54:16 · 778 阅读 · 0 评论 -
Python学习:str.find()方法、dict.get()方法、sort()函数、sorted()函数、
find()方法Python find() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果包含子字符串返回开始的索引值,否则返回-1。str.find(str, beg=0, end=len(string)) 参数 str -- 指定检索的字符串 beg -- 开始索引,默认为0。 end -- ...原创 2019-10-19 21:50:41 · 1351 阅读 · 0 评论 -
Python学习:内置函数
isinstance(a,type)—判断前面的是否是后面的这种类型,返回true或falsetype()int()long()float()5、str(x)list(x)tuple(x) //元组complex()–转换成负数hex()–转换成十六进制oct()–转换成八进制chr()–参数0-252,返回当前的ASCII码...原创 2019-06-28 23:04:58 · 131 阅读 · 0 评论 -
python 生成器和生成器函数、yield、
iter() 函数用来生成迭代器。iter(object[, sentinel])参数object – 支持迭代的集合对象。sentinel – 如果传递了第二个参数,则参数 object 必须是一个可调用的对象(如,函数),此时,iter 创建了一个迭代器对象,每次调用这个迭代器对象的__next__()方法时,都会调用 object。返回值:迭代器对象。>>>...转载 2019-09-15 19:08:08 · 618 阅读 · 0 评论 -
Python学习:random --- 生成伪随机数
文章目录1 整数用函数序列用函数实值分布该模块实现了各种分布的伪随机数生成器。对于整数,从范围中有统一的选择。 对于序列,存在随机元素的统一选择、用于生成列表的随机排列的函数、以及用于随机抽样而无需替换的函数。在实数轴上,有计算均匀、正态(高斯)、对数正态、负指数、伽马和贝塔分布的函数。 为了生成角度分布,可以使用 von Mises 分布。几乎所有模块函数都依赖于基本函数 random(...原创 2019-06-17 15:16:04 · 1567 阅读 · 0 评论 -
Python学习:decimal --- 十进制定点和浮点运算
decimal 模块为快速正确舍入的十进制浮点运算提供支持。模块设计以三个概念为中心:十进制数,算术上下文和信号。十进制数是不可变的。 它有一个符号,系数数字和一个指数。 为了保持重要性,系数数字不会截断尾随零。十进制数也包括特殊值,例如 Infinity ,-Infinity ,和 NaN 。 该标准还区分 -0 和 +0 。算术的上下文是指定精度、舍入规则、指数限制、指示操作结果...原创 2019-06-17 17:04:18 · 1485 阅读 · 0 评论 -
Python学习:round函数,截取小数位数
函数:round(number[, ndigits])描述:返回 number 舍入到小数点后 ndigits 位精度的值。 如果 ndigits 被省略或为 None,则返回最接近输入值的整数。对于支持round()的内置类型,值会被舍入到最接近的 10 的负 ndigits 次幂的倍数;如果与两个倍数的距离相等,则选择偶数 (因此,round(0.5) 和 round(-0.5) 均...原创 2019-06-17 16:21:24 · 2102 阅读 · 0 评论 -
Python:zip()函数
定义:zip([iterable, ...])zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表)。若传入参数的长度不等,则返回list的长度和参数中长度最短的对象相同。利用*号操作符,可以将list unzip(解压),看下面的例子就明白了:>>> a ...原创 2019-09-26 12:50:12 · 124 阅读 · 0 评论 -
Python学习:lambda函数、map函数,filter函数,reduce函数、partial()偏函数
map函数map(func, *iterables) --> map object参数function传的是一个函数名,可以是python内置的,也可以是自定义的。参数iterable传的是一个可以迭代的对象,例如列表,元组,字符串这样的。处理序列中的的每个元素,得到的结果是一个‘列表+’,该列表的元素个数及位置与原来的一样;a=(1,2,3,4,5)b=[1,2,3,4,5...原创 2019-06-19 09:33:32 · 498 阅读 · 0 评论 -
Python列表解析式
什么是列表解析式?列表解析式是将一个列表(实际上适用于任何可迭代对象(iterable))转换成另一个列表的工具。在转换过程中,可以指定元素必须符合一定的条件,才能添加至新的列表中,这样每个元素都可以按需要进行转换。如果你熟悉函数式编程(functional programming),你可以把列表解析式看作为结合了filter函数与map函数功能的语法糖:>>> doubl...原创 2019-10-18 21:51:11 · 382 阅读 · 0 评论 -
Python学习
主要参考:1 Python编程 从入门到实践2 Python编程快速上手 让繁琐工作自动化3 Blog原创 2019-06-18 22:16:19 · 257 阅读 · 0 评论 -
Python学习:字符串操作
文本是程序需要处理的最常见的数据形式。你已经知道如何用+操作符连接两个字符串, 但能做的事情还要多得多。可以从字符串中提取部分字符串, 添加或删除空白字符, 将字母转换成小写或大写, 检查字符串的格式是否正确。你甚至可以编写 Python 代码访问剪贴板, 复制或粘贴文本。...原创 2019-06-14 14:25:29 · 380 阅读 · 0 评论 -
Python学习:引用
文章目录引用传递引用copy 模块的 copy()和 deepcopy()函数引用变量保存字符串和整数值。>>> spam = 42>>> cheese = spam>>> spam = 100>>> spam100>>> cheese42将 42 赋给 spam 变量, 然后拷贝 sp...原创 2019-06-14 10:55:33 · 119 阅读 · 0 评论 -
Python学习:函数
文章目录定义函数传递实参位置实参关键字实参默认值返回值返回简单值返回字典结合使用函数和 while 循环传递列表在函数中修改列表禁止函数修改列表传递任意数量的实参结合使用位置实参和$\color{HotPink}{任意数量实参}$使用任意数量的$\color{HotPink}{关键字实参}$将函数存储在模块中导入整个模块导入特定的函数使用 as 给函数指定别名使用 as 给模块指定别名导入模块中的...原创 2019-06-13 14:03:08 · 237 阅读 · 0 评论 -
Python学习:其它
文章目录导入模块用 sys.exit()提前结束程序导入模块Python 程序可以调用一组基本的函数, 这称为“内建函数”, 包括你见到过的print()、 input()和 len()函数。 Python 也包括一组模块,称为“标准库”。每个模块都是一个 Python 程序, 包含一组相关的函数, 可以嵌入你的程序之中。例如, math模块有数学运算相关的函数, random 模块有随机数相...原创 2019-06-13 08:08:39 · 129 阅读 · 0 评论 -
Python学习:异常
文章目录处理 ZeroDivisionError 异常使用 try-except 代码块使用异常避免崩溃else 代码块处理 FileNotFoundError 异常处理 ZeroDivisionError 异常下面来看一种导致Python引发异常的简单错误。你可能知道不能将一个数字除以0,但我们还是让Python这样做吧:print(5/0)显然, Python无法这样做,因此你将看到...原创 2019-06-17 10:00:11 · 252 阅读 · 1 评论 -
Python学习:字 典
一个简单的字典alien_0 = {'color': 'green', 'points': 5}print(alien_0['color'])print(alien_0['points'])字典alien_0存储了外星人的颜色和点数。使用两条print语句来访问并打印这些信息,如下所示:green5使用字典在Python中, 字典是一系列键—值对。每个键都与一个值相关联,...原创 2019-06-12 19:55:40 · 184 阅读 · 0 评论 -
Python学习:元组
Python将不能修改的值称为不可变的,而不可变的列表被称为元组。定义元组元组看起来犹如列表,但使用圆括号而不是方括号来标识。定义元组后,就可以使用索引来访问其元素,就像访问列表元素一样。例如,如果有一个大小不应改变的矩形,可将其长度和宽度存储在一个元组中,从而确保它们是不能修改的:dimensions = (200, 50)print(dimensions[0])print(di...原创 2019-06-12 17:49:44 · 847 阅读 · 0 评论 -
Python:列表、列表切片
创建数值列表列表非常适合用于存储数字集合,而Python提供了很多工具,可帮助你高效地处理数字列表。明白如何有效地使用这些工具后,即便列表包含数百万个元素,你编写的代码也能运行得很好。使用函数 range()数range()让你能够轻松地生成一系列的数字。for value in range(1,5): print(value)输出:1234在这个示例中, r...原创 2019-06-12 17:26:16 · 248 阅读 · 0 评论 -
Python学习:列表
列表由一系列按特定顺序排列的元素组成。在Python中,用方括号( [])来表示列表,并用逗号来分隔其中的元素。bicycles = ['trek', 'cannondale', 'redline', 'specialized']访问列表元素列表是有序集合,因此要访问列表的任何元素,只需将该元素的位置或索引告诉Python即可。要访问列表元素,可指出列表的名称,再指出元素的索引...原创 2019-06-12 15:49:21 · 853 阅读 · 0 评论 -
Python学习: Python 中的 if __name__ == '__main__' '__file__'
程序入口对于很多编程语言来说,程序都必须要有一个入口,比如 C,C++,以及完全面向对象的编程语言 Java,C# 等。如果你接触过这些语言,对于程序入口这个概念应该很好理解,C 和 C++ 都需要有一个 main 函数来作为程序的入口,也就是程序的运行会从 main 函数开始。同样,Java 和 C# 必须要有一个包含 Main 方法的主类来作为程序入口。而 Python 则有不同,它属于脚...原创 2019-06-22 23:22:44 · 865 阅读 · 0 评论