python
文章平均质量分 68
Python 学习者
人生苦短,我用python
展开
-
推荐一个好用的Python词云展示库-wordcloud
wordcloud是优秀的词云展示第三方库,wordcloud能够将一段文本变成一个词云。词云就是将词语通过图形可视化的方式,直观和艺术的展示出来。词云在我们的生活中经常能够看到,无论是中文的词云还是英文的词云。安装第三方库需要使用pip工具,在命令行下运行安装命令(不是IDLE)。注意:需要将Python目录和其目录下的Scripts目录加到环境变量中。使用命令pip install wordcloud安装第三方库,安装之后会提示successfully installed,告知是否安装成功。原创 2023-04-07 15:34:15 · 865 阅读 · 1 评论 -
4道python基础案例题(进制转换、字符串加密的实现、猜拳游戏、多种方法计算π)
4道python基础案例题(进制转换、字符串加密的实现、猜拳游戏、多种方法计算π)原创 2023-03-13 20:01:57 · 1322 阅读 · 0 评论 -
Python中重要的条件语句教程
假设一个场景:1. 同学们这个年龄去过网吧吗?2. 去网吧进门想要上网必须做的一件事是做什么?(考虑重点)3. 为什么要把身份证给工作人员?4. 是不是就是为了判断是否成年?5. 是不是如果成年可以上网?如果不成年则不允许上网?其实这里所谓的判断就是条件语句,即条件成立执行某些代码,条件不成立则不执行这些代码。原创 2023-03-06 19:59:56 · 640 阅读 · 0 评论 -
python中可以处理word文档的模块:docx模块
Python可以利用python-docx模块处理word文档,处理方式是面向对象的。也就是说python-docx模块会把word文档,文档中的段落、文本、字体等都看做对象,对对象进行处理就是对word文档的内容处理。原创 2023-01-04 14:55:25 · 1169 阅读 · 0 评论 -
什么是字符编码?
什么是字符编码?原创 2022-12-29 15:45:37 · 294 阅读 · 0 评论 -
十二道python编程题,有答案(计算文件大小、三级菜单、文件监听、发红包、递归问路、人狗大战、计算器、校验文件的一致性、打印九九乘法表、购物车作业、学生选课系统)
计算文件大小、三级菜单、文件监听、发红包、递归问路、人狗大战、计算器、校验文件的一致性、打印九九乘法表、购物车作业、学生选课系统原创 2022-12-25 19:10:19 · 1154 阅读 · 0 评论 -
Python中的几种推导式用法
Python 推导式是一种独特的数据处理方式,可以从一个数据序列构建另一个新的数据序列的结构体。原创 2022-11-05 15:54:33 · 464 阅读 · 0 评论 -
如何在python同一行内输入若干个数?
在python同一行内输入若干个数原创 2022-08-22 16:10:16 · 9904 阅读 · 0 评论 -
python中两个可以美化表格数据输出结果的工具,很好用
python中两个可以美化表格数据输出结果的工具,很好用原创 2022-06-22 16:03:19 · 1244 阅读 · 0 评论 -
Python异常处理中异常的种类有哪些?你知道几个?
在python中不同的异常可以用不同的类型(python中统一了类与类别,类型即类)取标识,一个异常标识一种错误。1.常见语法错误AttributeError 试图访问一个对象没有的属性,比如foo.x,但是foo没有属性x IOError 输入/输出异常;基本上是无法打开文件 ImportError 无法引入模块或包;基本上是路径问题或名称错误 IndentationError 语法错误(的子类) ;代码没有正确对齐 IndexError 下标索引超出序列边界,比如当x只有三个元素,却原创 2021-11-25 16:22:25 · 858 阅读 · 0 评论 -
为什么Python列表和字典前面会加星号(**)?
Python 中,单星号*和双星号**除了作为“乘”和“幂”的数值运算符外,还在列表、元组、字典的操作中有着重要作用。一、列表(list)、元组(tuple)前面加星号*列表前面加星号作用是将列表解开(unpacke)成多个独立的参数,传入函数。def add(a, b): return a + bdata = [7, 8]print(add(*data)) # 15import numpy as npprint(np.arange(3,6)) # [3 4 5]list2 =原创 2021-10-21 15:35:03 · 2318 阅读 · 0 评论 -
python基础教程:re模块用法详解
一、正则表达式的特殊字符介绍正则表达式^匹配行首$匹配行尾.任意单个字符[]匹配包含在中括号中的任意字符[^]匹配包含在中括号中的字符之外的字符[-]匹配指定范围的任意单个字符?匹配之前项的1次或者0次+匹配之前项的1次或者多次*匹配之前项的0次或者多次{n}匹配之前项的n次{m,n}匹配之前项最大n次,最小m次{n,}配置之前项至少n次二、re模块的方法介绍1、匹配类方法a、findall方转载 2021-10-12 16:26:48 · 1231 阅读 · 0 评论 -
Python基础教程:判断列表中是否存在某元素
成员运算符运算符描述in如果在指定的序列中找到值返回 True,否则返回 Falsenot in如果在指定的序列中没有找到值返回 True,否则返回 False实例:lista=[1,'5','s','cf']if 1 in lista: print('1 在列表lista中')if '1' in lista: print('"11" 在列表lista中')if 'cf' in lista: print('cf 在列表lista中')i转载 2021-10-09 16:03:51 · 6581 阅读 · 0 评论 -
Python面向对象中类成员及修饰符的详细用法
1 类的成员概述类的成员可以分为三个大类:字段、方法、属性。关系主要如下图:在上述类的成员中,普通字段是存储在对象之中的;其他成员均是存储在类中,也就是说无论创建了多少个对象,对象本身只保留成员中的普通字段,其他成员均存储在类中。2 字段字段分为普通字段和静态字段,普通字段属于对象,静态字段属于类;因此,它们在内存中的位置也不一样。下面看一下它们怎么定义和访问:class Subject(object): # 静态字段 subject = "数学科" def __in转载 2021-10-08 15:34:41 · 963 阅读 · 0 评论 -
python中常用的几个函数的正确用法-lambda/filter/map/reduce
lambda/filter/map/reduce这几个函数面试中很肯定会用到,本篇主要介绍这几个函数的用法。1 lambda匿名函数,用法如下:# lambada 参数,参数,参数 : 返回的表达式 示例1:f = lambda x, y: x * yprint(f(2, 3)) # 6示例2:r = (lambda x, y: x+y)(1, 2)print(r) # 32 filterfilter(function, sequence):对seque原创 2021-10-08 15:04:19 · 307 阅读 · 0 评论 -
【Python教程】3道循环结构练习题,都会了吗?
练习1:输入一个数判断是不是素数。from math import sqrtnum = int(input('请输入一个正整数: '))end = int(sqrt(num))is_prime = Truefor x in range(2, end + 1): if num % x == 0: is_prime = False breakif is_prime and num != 1: print('%d是素数' % num)else:原创 2021-10-07 19:30:39 · 1237 阅读 · 0 评论 -
【python教程】 print()函数用法总结
在 Python 3 中接触的第一个很大的差异就是缩进是作为语法的一部分,这和C++等其他语言确实很不一样,所以要小心 ,其中python3和python2中print的用法有很多不同,python3中需要使用括号缩进要使用4个空格(这不是必须的,但你最好这么做),缩进表示一个代码块的开始,非缩进表示一个代码的结束。没有明确的大括号、中括号、或者关键字。这意味着空白很重要,而且必须要是一致的。第一个没有缩进的行标记了代码块,意思是指函数,if 语句、 for 循环、 while 循环等等的结束。1.字符原创 2021-10-07 16:59:31 · 2788 阅读 · 0 评论 -
【Python基础教程】三种常用、效率最高的Python字符串拼接方法
python字符串连接的方法,一般有以下三种:方法1:直接通过加号(+)操作符连接website=& 39;python& 39;+& 39;tab& 39;+& 39; com& 39;方法2:python字符串连接的方法,一般有以下三种:1:直接通过加号(+)操作符连接website = 'python' + 'baidu' + '.com'2:join方法listStr = ['python', 'baidu', '.com']原创 2021-09-29 15:29:07 · 1034 阅读 · 0 评论 -
【python基础教程】魔法方法__init__,__str__,__del__的使用方法
1. python中的魔法方法, 类似__init__,__str__等等,这些内置好的特定的方法进行特定的操作时会自动被调用2. __init__的使用方法class 类名(object): def __init__(self): print("hhahhah")对象1 = 类名()打印结果:hhahhah说明init的方法实例化对象的时候会自动初始化调用3. __str__的使用方法'''学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:53转载 2021-09-25 14:50:55 · 338 阅读 · 0 评论 -
Python正则表达式中re.sub自定义替换方法正确使用方法
在使用正则替换时,有时候需要将匹配的结果做对应处理,便可以使用自定义替换方法。re.sub的用法为:re.sub('匹配表达式',替换字符或替换函数,替换次数,其他参数)例如,加入将字符串中的$开头的变量替换为上下文context中对应的值,可以操作如下。import recontext = {'a': 1, 'b': 2, 'except': 3}text = '$a + $b = $except'def repl_func(matched): if matched:转载 2021-09-14 22:07:02 · 1327 阅读 · 0 评论 -
【Python教程】常用的os操作详情
Python自动的os库是和操作系统交互的库,常用的操作包括文件/目录操作,路径操作,环境变量操作和执行系统命令等。文件/目录操作获取当前目录(pwd): os.getcwd()切换目录(cd): os.chdir(’/usr/local/’)列出目录所有文件(ls):os.listdir(’/usr/local/’)创建目录(mkdir):os.makedirs(’/usr/local/tmp’)删除目录(rmdir):os.removedirs(’/usr/local/tmp’) # 只能转载 2021-09-10 18:45:49 · 388 阅读 · 0 评论 -
【Python学习教程】集合操作的详细教程
Python中有两种可以遍历的容器类型。序列类型:包含字符串、列表、元祖映射(哈希)类型:包含字典、集合序列类型是线性表,就像数组一样,是在内存中开辟一块连续空间,连续存储的,那么查找某个元素时就需要从头开始租个对比,因此序列的查询效率是O(n),即一个长度为n的序列查询一个变量是否在其中一般需要n次操作。映射类型是散列表,是基于哈希(Hash)算法的,变量在映射中的存储位置是通过计算得出来的,存取时,通过Hash计算出其应该存放的位置,存入,查找时,通过Hash计算其存放的位置,取出,因此映射转载 2021-09-10 16:34:04 · 224 阅读 · 0 评论 -
python基础教程: *与**的区别
python中,在形参前面加上*与**,称为动态参数加*时,函数可接受任意多个参数,全部放入一个元祖中def F(*args): print(args)F(123,"456")# (123, '456')加**时,函数接受参数时,返回为字典,需要写为如下形式:def F(**kwargs): print(kwargs)F(k1=123,k2="456")# {'k1': 123, 'k2': '456'}'''学习中遇到问题没人解答?小编创建了一个Python转载 2021-09-09 15:06:35 · 415 阅读 · 0 评论 -
Python基础教程:私有变量的访问和赋值教程
首先我们这里先描述下:Python中,变量名类似__x__的,以双下划线开头,并且以双下划线结尾的,是特殊变量,特殊变量是可以直接访问的(比如 __doc__, __init__等),不是private变量,所以,不能用__name__、__sex__这样的变量名定义私有变量。有些时候,你会看到以一个下划线开头的实例变量名,比如_name,这样的实例变量外部是可以访问的,但是,按照约定俗成的规定,虽然该变量是可以被访问,但是建议遵循命名规范命名。我们看个例子:访问python的私有变量:class转载 2021-09-09 14:44:37 · 1060 阅读 · 0 评论 -
python中可变类型与不可变类型详细介绍
一.可变类型与不可变类型的特点1.不可变数据类型不可变数据类型在第一次声明赋值声明的时候, 会在内存中开辟一块空间, 用来存放这个变量被赋的值, 而这个变量实际上存储的, 并不是被赋予的这个值, 而是存放这个值所在空间的内存地址, 通过这个地址, 变量就可以在内存中取出数据了. 所谓不可变就是说, 我们不能改变这个数据在内存中的值, 所以当我们改变这个变量的赋值时, 只是在内存中重新开辟了一块空间, 将这一条新的数据存放在这一个新的内存地址里, 而原来的那个变量就不在引用原数据的内存地址而转为引用新数转载 2021-09-02 18:55:53 · 4626 阅读 · 0 评论 -
Python基础教程:装饰器的详细教程
一、什么是装饰器目的:给func()方法,增加一个功能,在fun()执行期间,同时把fun()执行速率机算出来import timedef func(): print('嘻嘻哈哈')start_time = time.time()time.sleep(0.1)func()end_time = time.time()print('----> 执行效率%s'%(end_time - start_time))如果,我们给fun1,fun2,fun3,实现相同的功能呢?'''原创 2021-08-28 15:45:45 · 298 阅读 · 0 评论 -
Python常用函数中NumPy的使用教程
1. txt文件(1) 单位矩阵,即主对角线上的元素均为1,其余元素均为0的正方形矩阵。在NumPy中可以用eye函数创建一个这样的二维数组,我们只需要给定一个参数,用于指定矩阵中1的元素个数。例如,创建3×3的数组:import numpy as npI2 = np.eye(3)print(I2)[[1. 0. 0.] [0. 1. 0.] [0. 0. 1.]](2) 使用savetxt函数将数据存储到文件中,当然我们需要指定文件名以及要保存的数组。np.savetxt('eye转载 2021-08-27 21:40:25 · 458 阅读 · 0 评论 -
Python基础教程:关于序列操作的方式方法
序列是指按照位置顺序来存储数据的数据结构,也就是说能通过数值索引进行操作。实际上,python对序列的解释是:只要类型对象中重载了__len__()和__getitem__(),且它们的整数参数从0开始,就表示这个类型满足序列协议,是一个序列类型。python有三种基本的序列类型:列表、元组和range对象。当然,还有特别定制的序列类型:str和binary data。序列类型又分为可变序列和不可变序列。可变序列表示可以原处修改的序列,不可变序列意味着不允许原处修改。例如,列表是可变序列,字符串是不可变转载 2021-08-14 15:45:12 · 741 阅读 · 0 评论 -
整理了100道关于Python3基础知识的练习题,记得收藏
100道关于Python3基础知识的练习题实例1.数字组合实例2.个税计算实例3.完全平方数实例4.这天第几天实例5.三数排序实例6.斐波那契数列实例7.copy实例8.九九乘法表实例9.暂停一秒输出实例10.给人看的时间实例011.养兔子实例12.100到200的素数实例13.所有水仙花数实例14.分解质因数实例15.分数归档实例16.输出日期实例17.字符串构成实例18.复读机相加实例19.完数实例20.高空抛物实例21.猴子偷桃实例22.比赛对手实例23.画菱形实例24.斐波那契数列II实例25. 阶转载 2021-07-13 16:19:50 · 3584 阅读 · 0 评论 -
Python11道基础练习题
1.编写程序,输入一个自然数字符串,然后输出各位数字之和。a=input("输入一串数字:")b=0for i in a: b=b+eval(i)print("数字之和为:{}".format(b))2.输入一个字符串,输出反转后的字符串。a=input("输入一个字符串:")t=list(a)t.reverse()for i in t: print(i,end='')3.输入一个包含若干整数的列表,输出列表中的最大值s=input("输入任意数据:")t=[int(n)转载 2021-07-02 17:03:21 · 1992 阅读 · 1 评论 -
Python 网络请求模块 urllib 、requests
Python 给人的印象是抓取网页非常方便,提供这种生产力的,主要依靠的就是 urllib、requests这两个模块。urlib 介绍urllib.request 提供了一个 urlopen 函数,来实现获取页面。支持不同的协议、基本验证、cookie、代理等特性。urllib 有两个版本 urllib 以及 urllib2。urllib2 能够接受 Request 对象,urllib 则只能接受 url。urllib 提供了 urlencode 函数来对GET请求的参数进行转码,urllib转载 2021-03-25 14:08:57 · 262 阅读 · 0 评论 -
Python socket通过代理访问web服务实现
一、说明1.1 背景说明关于“代理”,从burpsuite到ss这类正向代理,再从nginx到haproxy这类反向代理,也用了好多年配置了好多年了。在日积月累之下也确认了以下几个问题:正向代理和反向代理的区别----正常访问路径是client----public network----server,如果代理服务器处于client和public network之间就是正向代理,如果代理服务器处于public network和server之间就是反向代理。代理从连接的角度是怎么实现的----A建立一个转载 2021-03-24 15:53:57 · 1891 阅读 · 0 评论 -
Python元类是怎么创建一个类的?
如果你看过比较优秀的 Python 开源框架,肯定见到过元类的身影。例如,在一个类中定义了类属性 __metaclass__,这就说明这个类使用了元类来创建。那元类的实现原理究竟是怎样的?使用元类能帮我们在开发中解决什么样的问题?这篇文章,我们就来看一下 Python 元类的来龙去脉。什么是元类?我们都知道,定义一个类,然后调用它的构造方法,就可以初始化出一个实例出来,就像下面这样:class Person(object) def __init__(name): s转载 2021-03-23 15:19:34 · 305 阅读 · 0 评论 -
python教程:selenium WebDriver 中的几种等待--sleep(),implicitly_wait(),WebDriverWait()
强制等待:sleep()import timesleep(5) #等待5秒设置固定休眠时间,单位为秒。 由python的time包提供, 导入 time 包后就可以使用。缺点:不智能,使用太多的sleep会影响脚本运行速度。隐式等待:implicitly_wait()driver.implicitly_wait(10) #隐式等待10秒由webdriver提供的方法,一旦设置,这个隐式等待会在WebDriver对象实例的整个生命周期起作用,它不针对某一个元素,是全局元素等待,即在定位元素转载 2021-01-09 14:07:13 · 3339 阅读 · 0 评论 -
Python解决数据样本类别分布不均衡问题
所谓不平衡指的是:不同类别的样本数量差异非常大。数据规模上可以分为大数据分布不均衡和小数据分布不均衡。大数据分布不均衡:例如拥有1000万条记录的数据集中,其中占比50万条的少数分类样本便于属于这种情况。小数据分布不均衡:例如拥有1000条数据样本的数据集中,其中占有10条的少数分类样本便于属于这种情况。样本类别分布不平衡主要出现在分类问题的建模上。导致样本量少的分类所包含的特征过少,很难从中...转载 2020-04-03 16:03:34 · 3610 阅读 · 0 评论 -
python列表排序方法reverse、sort、sorted
python语言中的列表排序方法有三个:reverse反转/倒序排序、sort正序排序、sorted可以获取排序后的列表。在更高级列表排序中,后两中方法还可以加入条件参数进行排序。reverse()方法将列表中元素反转排序,例:l=[4,2,3,1]l.reverse()print(l) # [1,3,2,4]reverse列表反转排序:是把原列表中的元素顺序从左至右的重新存放...转载 2020-03-24 15:59:47 · 848 阅读 · 0 评论 -
Python中webbrowser的用法
#coding:utf-8import timeimport webbrowser as webimport osimport random#随机选择一个浏览器打开网页def open_url_use_random_browser(): #定义要访问的地址 url='https://www.baidu.com' #定义浏览器路径 browser_path...转载 2020-03-23 20:32:02 · 3192 阅读 · 0 评论 -
Python--多任务(多进程,多线程,协程)
1.单核CPU实现“多任务”:(注意:这里的多任务假的,是轮训执行多个任务一段时间)1)时间片轮转2)优先级调度算法**2.并行:**真的多任务执行(CPU核数>=任务数);即在某个时刻点上,有多个程序同时运行在多个CPU上**3.并发:**假的多任务执行(CPU核数<任务数);即一段时间内,有多个程序在同一个CPU上运行4.多线程执行的顺序不确定5.没运行的程序是程序,运...转载 2020-03-23 19:32:08 · 1514 阅读 · 1 评论 -
Python数据解析的三种方式
一,正则表达式解析在爬虫中,下面两种方式用的多一些~大致用法:pattern = re.compile('<dd>.*?board-index.*?>(\d+)</i>.*?src="(.*?)".*?name"><a' +'.*?>(.*?)</a>.*?star">(.*?)<...转载 2020-01-10 15:45:58 · 3731 阅读 · 1 评论 -
python 利用from ... import * 的特性实现文件的覆盖
在Python中, 如果使用 from module import * 这样方式进行导包, 就会把module模块里所有的变量导入进来, 并且可以直接使用(其实导包时 module 模块已经被从头到尾执行一遍了), 但是如果当前文件存在和模块里相同的变量名称, 那么就会使用当前文件的变量值, 在项目中可以利用这个特性, 将配置文件进行拆分, 然后进行按序的导入, 从而实现开发环境和生产环境相同配置...转载 2019-12-24 14:49:42 · 813 阅读 · 0 评论