Python 综合
文章平均质量分 65
西二旗王员外
我的个人笔记,如果有幸对您有帮助,欢迎点赞…………
展开
-
Python 聊聊有内置函数,又该怎么学习内置函数
python有内置函数的概念,从Python3.x开始,内置函数位于builtins模块,比如我们常用的内置函数len(),其实它是builtins模块下的属性,我们也可以builtins.len()去访问,当然因为每个模块加载的时候,已经自动导入builtins模块对象,所以直接可以直接使用len()另外因为每个模块属于module类型的一个对象,所以builtins作为一个模块对象,每个内置函数属于builtins对象的内置属性,本篇除了介绍所有的内置函数之外,还会罗列常用的内置函数。原创 2024-09-24 20:12:08 · 679 阅读 · 0 评论 -
python脚本程序怎么写更优雅?argparse模块巧妙应用
前言 编写命令行程序,也称CLI程序,由于没有图形界面,参数是通过命令行参数的形式传递到脚本中的,Python标准库中有个建议使用的模块,它专门从sys模块的args属性中自动提取出命令行参数,然后转换成你要求的Python类型,如果你对sys.args已经很熟悉了,那我建议你使用argparse模块,用它来编写命令行程序,非常方便!argparse模块介绍 截止到2021年11月6日,argparse模块共2575行代码,位于lib/argparse.py文件中,作者是Stev...原创 2024-09-24 19:45:52 · 1085 阅读 · 0 评论 -
python 模块搜索路径
当我们import os的时候,Python解释器去哪找os模块呢?如果多处都有os模块,选择哪个os模块呢?python解释器查找模块的过程,如果能熟练掌握的情况,你就再也不怕ImportError这个讨厌的错误,如果大家不理解,建议再读一遍,同时作以下练习,看看模块搜索路径都有,你要找的模块在不在这些目录中呢?import sys。原创 2024-01-06 20:49:07 · 514 阅读 · 0 评论 -
Python调用外部程序的9种方式,你都知道吗?
1、官方提供这么多种执行外部程序的方式,我相信与标准的制定有关,每个方式都不完美,但总有适合你的2、它们都会阻塞当前进程3、官方建议使用subprocess下的方式,而不建议使用os下的方式4、subprocess模块的源码非常值得一读5、肯定还有其他调用外部程序的方式,不过这些真的够用了。原创 2023-02-21 22:52:35 · 9263 阅读 · 0 评论 -
Python queue模块源码分析(第一篇:queue模块介绍)
前言 通过queue模块中的对象,我们可以创建线程安全的普通队列,优先级队列、堆栈。它们不仅可以用于线程间交换数据(线程间通信),还支持线程间阻塞(线程间同步),我常常喜欢称它们为【线程间通信+同步】的数据结构!今天通过源码学习作者是如何实现的线程间同步,又是如何实现的线程间通信!queue模块介绍 queue模块源码位于Pythonxx/Lib/queue.py文件中,xx取决于你的版本(本文基于Python3.7),属于标准库中的一员,下面是queue模块中的属性情况...原创 2022-01-11 23:00:14 · 2108 阅读 · 0 评论 -
Python 函数、类方法、静态方法、实例方法的理解
函数、类方法、静态方法、实例方法都是Python中的术语,可能刚学习Python的同学还分不清楚,学完这篇就完全明白了函数 函数定义在模块中,且不在类中!原创 2021-03-28 19:37:32 · 633 阅读 · 0 评论 -
Python之元组tuple对象的创建的十种方式
第一种:使用(),创建空的元组对象temp = ()第二种:使用tuple类的构造器,创建空的元组对象temp = tuple()第三种:使用(),创建仅有一个元素的元组对象temp = ("hello",) #逗号不可省略第四种:省略(),创建仅有一个元素的元组对象temp = "hello", #尾部的逗号不可省略第五种:省略(),创建包含多个元素的元组对象temp = 1,2,"Hello World" #逗号隔开多个元...原创 2020-10-29 09:57:01 · 16444 阅读 · 1 评论 -
Python之列表list的创建
第一种方式:使用中括号[]temp = ["hi","wang","yuan","wai"]第二种方式:使用list()构造方法说明:创建一个没有元素的list对象temp = list()第三种方式:原创 2020-08-10 18:05:51 · 3779 阅读 · 0 评论 -
Python之set并集、交集、差集
数学知识点回顾交集合集差集https://jingyan.baidu.com/article/22fe7ced4e36bd7002617fae.html数学知识点回顾原创 2022-03-10 11:33:42 · 1947 阅读 · 0 评论 -
Python之列表list查找元素
使用下标 所有序列都支持下标,list是序列的一种index() 方法count()方法原创 2020-08-05 23:00:47 · 4287 阅读 · 0 评论 -
Python之set删除元素
remove(elem)从集合中移除元素elem。 如果elem不存在于集合中则会引发KeyError。discard(elem)如果元素elem存在于集合中则将其移除。pop()从集合中移除并返回任意一个元素。 如果集合为空则会引发KeyError。clear()从集合中移除所有元素。...原创 2020-08-05 22:43:49 · 15578 阅读 · 1 评论 -
技术实现:smtplib模块实现邮件回复功能
smtplib参考文章,只有smtplib0、登录凭据无法使用Gmail SMTP https://cloud.tencent.com/developer/ask/209538 其实是做邮件发送时踩的坑1、SMTP报错 smtplib.SMTPDataError: 554, smtplib.SMTPAuthenticationError: 535 廖雪峰案例BUG https://blog...原创 2019-11-09 11:37:31 · 259 阅读 · 1 评论 -
Python全局变量、局部变量、类变量、实例变量的解读
1、前言相信同学们一定懵逼过,那是,不懵逼就不正常了,现在由我为了大家在轻松的氛围下逐个说明 标题中所述的 【名词】2、定义 a、全局变量:在模块内、在所有函数外面、在class外面,这就是全局变量。 b、局部变量:在函数内、在class的方法(构造、类方法、静态方法、实例方法)内(变量未加self修饰),这就是局部变量 ...原创 2016-09-07 16:45:55 · 61247 阅读 · 11 评论 -
Python之函数如何返回多个值
1、我去,玩java,玩久了,没有想到python支持返回多个值2、这里有个误区,多个值,真的是多个,而不是说返回一个ArrayList之类容器,或者其他容器对象啊,真的就是多个值3、例子>>> def fkMulti():... a = 5... b = 10... return a,b...>>> ...原创 2019-03-31 00:21:40 · 19386 阅读 · 2 评论 -
Python 切片的轻谈
1、切片操作可以从一个字符串中,截取一个字符串,Python牛掰之处,好方便2、看下基本的语法,这是一个全包括的状态[start:end:step]3、默认的几种用法先提及几个关键概念:a、第一个字符的下标是0,即从左到右,是从0开始,然后1、2、3、4、5b、最后一个字符到下标是-1,即从右到左,是从-1开始,然后-1、-2、-3、-4、-5因为第一个字符是0,第二...原创 2020-10-29 11:01:45 · 10022 阅读 · 0 评论 -
Python之sys.argv[0]、sys.argv[1]分别代表什么
1、本来想执行脚本的时候,传进来参数,利用sys模块就可以读取传进来的参数,我首先用的是sys.argv[0]import sysalu_path = sys.argv[0]模块文件:install_app_v1.0_crush.py2、脚本执行命令python install_app_v1.0_crush.py 传进来的参数3、修改为 sys.argv[1]解决问题,...原创 2018-11-29 19:41:46 · 56875 阅读 · 4 评论 -
Python __name__与“__main__“是什么意思?
1、好些个文件里经常看到"__main__",就下面那么一行判断 __name__ == 一个字符串if __name__ == "__main__": #结果是True或False2、比如这样,字符串对比>>> fk == "hello"True>>> fk == 'w'False3、关于__name__的值a、如果该模块是...原创 2020-08-08 22:46:13 · 12940 阅读 · 7 评论 -
Python之集合set对象的创建
1、惭愧啊,集合的概念都没总结吗?2、基本概念英文名字:set中文名字:集合是一个元素无序、无重复元素、不可变对象的集合3、set有点像dict,只是没有value,而dict中的key集合,就是用的set4、重要特征a、set中的每一个元素必须是不可变对象b、set中不可以有重复的元素c、set中的元素插入、元素访问都是完全无序的5...原创 2019-01-04 18:42:08 · 18475 阅读 · 0 评论 -
Python可变参数(任意参数)的理解
1、定义了一个需要两个参数的函数def print_str(first, second): print first print secondif __name__ == "__main__": print_str("hello", "world")如果传一个参数调用,print_str("hello"),那么一定会抛出异常的明确告诉你需要准确的两个参数,现...原创 2018-12-14 15:34:55 · 88078 阅读 · 51 评论 -
Python 特殊方法、魔法方法的轻谈
前言 如果你使用Python并使用面向对象编程,一定会经常见特殊方法,最常见的特殊方法是__init__,特殊方法最大的特点是它会被Python解释器自动调用,接下来认真学习一下(当然所有的特殊方法当然是定义在类中的)什么是特殊方法? 特殊方法是定义在类中的实例方法,因为支持自动调用,所以称为特殊方法!别称1:魔法方法别称2:内置方法英文名:Magic Method特点:所有的特殊方法均会在某个特定操作时被Python解释器自动调用注意:特殊方法支持手动调用...原创 2021-01-13 21:27:39 · 3699 阅读 · 0 评论 -
Python之列表list遍历元素
参考文章:https://blog.csdn.net/pwh309315228/article/details/79093679前言:颈椎病犯了,妈蛋,好疼0、直接上干货,第一种:for ingirl_list = ["貂蝉", "狐狸精","范金链","翠花","小班"]for everyOne in girl_list: print(everyOne)输出结...原创 2019-01-04 17:18:11 · 2160 阅读 · 0 评论 -
Python之字符串的遍历
0、怒赞,总结完List、Tuple、眼看不能把string剩下,所以连续总结1、第一种方式,for ingirl_str = "love You"for everyChar in girl_str: print everyChar2、第二种方式,range()或xrange(),把字符串长度传进去就行girl_str = "love You"for...原创 2019-01-04 17:34:05 · 50008 阅读 · 2 评论 -
Python之元组tuple遍历元素
Tuple的同样需要遍历嘛,只是一旦创建后,元素不可变,遍历同List一样分开写的原因是,就像那位大牛说的,层级都不要太深,本来就low,一下子放在一起,知识不好巩固0、直接上干货,第一种:for ingirl_tuple = ("貂蝉", "狐狸精","范金链","翠花","小班")for everyOne in girl_tuple: print(everyOn...原创 2019-01-04 17:22:52 · 35084 阅读 · 1 评论 -
Python之集合set遍历元素
不废话,直接干货0、第一种方式,iter(),迭代器girl_list= ["美女", "好看的美女", "特别好看的美女"]girl_set = set(girl_list) #嘿嘿,把list转成set,set就接受一个参数for every in iter(girl_set): print every1、第二种方式(不支持),使用range()或者x...原创 2019-01-04 18:38:46 · 40333 阅读 · 0 评论 -
Python之字典遍历元素
0、恐怕除了创建字典,就是遍历字典用的最多了,不总结都不行1、第一种,for in , 拿到每一个key,那就好办了girl_dict= {"china": "小美", "japan": "图多天光", "korean": "斯密达美"}for everyKey in girl_dict: print "key:" + everyKey +原创 2019-01-05 10:55:18 · 13300 阅读 · 0 评论 -
Python之列表list添加元素
0、我总是觉得分开总结好一些,这次为了提高效率,那我就放到一个代码里面1、踩坑,print打印出,包含中文字符的list解决前:明显是编码格式的事情['\xe5\xbe\x90\xe5\xbc\xba', '\xe5\x80\x8d\xe6\x80\xbb', '\xe8\x88\xaa\xe7\xa5\x9e', '\xe5\xa4\xa7\xe6\xa3\xae']解决...原创 2019-01-05 11:29:51 · 9819 阅读 · 0 评论 -
Python之tuple添加元素及删除元素及修改元素的方式或方法(元组添加元素)
标题误导了各位,我是故意这样做的…抱歉一个tuple对象第一次创建后,再也无法原地改变自身持有的元素!希望大家记住这个知识点,所以才用标题误导大家进来!tuple的特点1、不支持添加元素【增】2、不支持删除元素【删】3、不支持修改元素(修改操作的步骤是:先删除、再添加)【改】4、支持2种查找元素【查】第一、根据下标查找元素,称为【访问】元素,时间复杂度为O(1)第二、根据元素值获取下标,称为【查找】元素,时间复杂度为O(n)举例创建一个持有4个元素(4个字原创 2019-01-05 11:43:01 · 97021 阅读 · 15 评论 -
Python之列表list删除元素
0、废话不多说,在List对象中,元素的删除,也是很重要的知识点,pop方法会返回删除掉的元素,这是一个很好的点子1、代码走起def printListWithChinese(resource): print str(resource).decode('string_escape')person_dev_group = ["徐强","倍总","航神","大牛","tom", ...原创 2019-01-05 14:38:50 · 8027 阅读 · 0 评论 -
Python之列表list修改元素
干货来了from utils import printListWithChineseperson_dev_group = ["徐强","倍总","航神","大牛","tom", "david","tyson"]printListWithChinese(person_dev_group)person_dev_group[0] = "牛逼的徐强&原创 2019-01-05 14:54:07 · 6815 阅读 · 0 评论 -
Python字典添加元素
手动推荐知识点字典创建-> 创建字典(7种方式)删除元素-> 字典删除元素(6种方式)修改元素-> 字典修改元素(4种方式)遍历元素-> 字典遍历元素(4种方式)查找元素-> 字典查找元素(3种方式)本文使用代码book_dict = {"price": 500, "bookName": "Python设计", "weight": "250g"}第一种方式:使用[]book_dict["owner"] = "tyson"说明:中.原创 2019-01-05 16:30:24 · 403468 阅读 · 16 评论 -
Python位置参数、默认参数、可变参数、关键字参数、命名关键字参数、命名位置参数
参考文章:https://www.cnblogs.com/bingabcd/p/6671368.htmldef printThreeChar(firstNum = 'a', secondNum = 'b', thirdNum = 'c'): #三个关键字参数,也称为默认参数 print firstNum print secondNum print thirdNum...原创 2020-09-20 17:21:27 · 18103 阅读 · 7 评论 -
Python之字典对象的创建(9种方式)
0、总结来总结去,总觉得少点什么,难道是1、直接上代码,这样效率高点# -*- coding=utf-8 -*-#第一种方式,简单骚气firstDict = {"name": "wang yuan wai ", "age" : 25}print firstDict# @staticmethod # known case# def fromkeys(S, v=None...原创 2019-01-25 17:13:49 · 26439 阅读 · 0 评论 -
Python之as关键字的三种用法
前言 as关键字在Python中的常见用法如下,本文可能有错误,还请指正,谢谢!一、别称功能import hello as h模块对象名称太长、或者不好记忆,此时可以使用as,hello与h指向一个模块对象,不过此时您只能通过新的名称h去访问模块对象二、with aswith object as temp: pass某些对象总是有固定的规律做事,使用with as语句,省去必须要做的事情 基本原理:with语句后面的对象,它的特殊方法__en...原创 2019-07-31 13:03:11 · 14789 阅读 · 4 评论 -
Python之TypeError: cannot concatenate…………
TypeError: cannot concatenate 'str' and 'int' objectsprint str + int 的时候就会这样了python + 作为连接符的时候,不会自动给你把int转换成str原创 2019-01-21 16:41:34 · 23076 阅读 · 1 评论 -
Python之字典修改元素
0、修改,作为增删改查中一部分,一定要分开来总结,体现一种认真的感觉1、不装13,直接开撸,两种修改方式,都不错哦# -*- coding=utf-8 -*-smart_girl = {"name":"yuan wai", "age": 25}if __name__ == "__main__": print smart_girl smart_girl["age"...原创 2019-01-23 15:20:47 · 27317 阅读 · 0 评论 -
Python之字典查找元素
0、首先,遍历也是查询的一种,是每个元素都要访问一次的查询办法1、该文中,将不再谈遍历,只谈访问某一个元素的办法2、两种方式,以及相关的坑,都写在下面了# -*- coding=utf-8 -*-smart_girl = {"name":"yuan wai", "age": 25}if __name__ == "__main__": print smart_girl...原创 2019-01-23 16:19:09 · 45744 阅读 · 0 评论 -
Python之字典删除元素
0、牛逼,一共写了六种形式,都能达到目的# -*- coding=utf-8 -*-smart_girl = {"name":"yuan wai", "age": 25,"address":"Beijing"}if __name__ == "__main__": print smart_girl print smart_girl.pop("name") #...原创 2019-01-23 16:31:24 · 8412 阅读 · 0 评论 -
Python之集合set添加元素
0、再回顾一下set,下面这位老兄总结的真精辟集合是无序的,不重复的数据集合,它里面的元素是可哈希的,但是集合本身是不可哈希,因为__hash__赋值为了None,(所以集合做不了字典的键)的。1、所谓无序,是指遍历元素的时候,与你插入元素、访问元素(访问、修改、两种都算访问)的顺序无关2、我再多句嘴,所谓不重复,里面的元素(对象)是没有重复,每个对象有且只能有一个3、set...原创 2019-08-07 12:56:47 · 54129 阅读 · 0 评论 -
Python try、except、finally、else的轻谈
0、真是的,都没空去总结try、except、finally、else,异常体系里重要的四个关键字def printCount(count): #下方例子中都会用这个函数 if count == 100: raise ValueError("I am error") print(count)1、trytry不能单独使用,必须后面跟随except或者fi...原创 2021-01-13 21:31:05 · 2847 阅读 · 15 评论 -
Python之requests错误Expecting value: line 1 column 1 (char 0)
参考文章:https://www.cnblogs.com/loveprogramme/p/9379532.html因为介绍到json模块,所以我就记录下来0、昨天使用requests发出post请求,报了一个 Expecting value: line 1 column 1 (char 0)1、开始想办法解决,后面打开charles,发现本来应该是放在body中的参数,全部放到url中...原创 2019-03-27 10:42:31 · 50041 阅读 · 0 评论