1 引言 2 命名空间2.1 什么是命名空间2.2 命名空间的类型2.3 命名空间的生命周期 3 作用域3.1 什么是作用域3.2 命名空间的查找顺序3.3 glocal与nonlocal3.4 globals()和locals()函数 4 易错情况 5 总结 1 引言 命名空间与作用域是程序设计中的基础概念,深入理解有助于理解变量的生命周期,减少代码中的莫名其妙bug。Python的命名空间与作用域与Java、C++等语言有很大差异,若不注意,就可能出现莫名其妙的问题。 2 命名...
####################### 整理 ################# # 一、数字# int(..) # 二、字符串# replace(替换)/find/join/strip(移除)/startswith/split(分割)/upper(转换为大写的)/lower(转换为小写)/format(占位符替换为指定的值)# tempalte = "i am {name}, age : {age}"# # v = tempalte.format(name=alex,age=19)# v = tempalte.format(**{"name": alex,age: 19})# print(v) # 三、列表# append(追加元素到原来列表后面)、extend(s1...
1 引言 2 理论准备 3 time模块 4 timedate模块4.1 date类4.2 time类4.3 datetime类4.4 datedelta类 1 引言在实际开发过程中,我们经常会用到日期或者时间,那么在Python中我们怎么获取时间,以及如何将时间装换位我们需要的格式呢?在之前的开发中,也曾遇到time、datetime等模块下的不同函数,这些函数名又很是相似,几次下来头都昏了,今天来彻底总结梳理一下Python中日期时间获取与格式化。 2 理论准备 首先必须做一点...
一、list()函数ls = list() #创建一个空列表。 st = {1,2,3,"a"} #集合类型 d = {1:"a",2:"b"} #字典类型 t = (1,2,3,"b") #元组类型 s = "厉害了,我的国!" #字符串类型#将集合,字典,元组,字符串 类型转化为列表类型 ls1 =list(st) ls2 =list(d) ls3 =list(t) ls4 =list(s)print(ls) print(ls1) print(ls2) print(ls3) print(ls4)程序运行结果:[] [1, 2, 3, a] [1, 2] [1, 2, 3, b] [厉, 害, 了, ,, 我, 的, 国, !]二、app...
列表是Python中使用最多的一种数据结果,如何高效操作列表是提高代码运行效率的关键,本文总结了一些python列表最常见的问题,希望能对大家有帮助。 1、迭代列表时如何访问列表下标索引 普通版: items = [8, 23, 45] for index in range(len(items)):print(index, "-->", items[index])>>> 0 --> 8 1 --> 23 2 --> 45 优雅版: for index, item in enumerate(items):print(index, "-->", item)>>> 0 --> 8 1 --> 23 2 --> 45 enum...
1.字符串操作函数find 在字符串中查找子串,找到首次出现的位置,返回下标,找不到返回-1 rfind 从右边查找 join 连接字符串数组 replace 用指定内容替换指定内容,可以指定次数 split 切割字符串sep:指定按照什么进行切割,默认按照空格切割 # maxsplit:指定最大切割次数,默认不限制次数 splitlines 按照换行进行切割 count 搜索指定字符串出现了几次 strip 去除两边空格 rstrip lstrip startswith()是否以...开头 endswith 是否以...
1.内置函数(无需导入)long() 函数将数字或字符串转换为一个长整型。len() 统计元素个数print() 打印,输出input() 输入,或阻塞程序运行type 获取类型range 产生连续的整数对象enumerate 枚举可迭代对象ord 字符转ASCIIchr ASCII转字符abs 求绝对值 类型转换 int float str bool list tup set dict max() 最大值min() 最小值sum 求和pow 求幂round 四舍五入 hex 十六进制oct 八进制bin 二进制 2. 模块函数(需要导入)calendar 日历...
转载自:python--threading多线程总结threading用于提供线程相关的操作,线程是应用程序中工作的最小单元。python当前版本的多线程库没有实现优先级、线程组,线程也不能被停止、暂停、恢复、中断。 threading模块提供的类: Thread, Lock, Rlock, Condition, [Bounded]Semaphore, Event, Timer, local。 threading 模块提供的常用方法: threading.currentThread(): 返回当前的线程变量。 threading.enumerate(): 返...
函数是Python的核心内容之一,能够提高代码的重复利用率。为了更好的使用函数,有必要了解函数的一些高级用法。 Python内置了三个高阶函数:所谓高阶函数就是以函数作为参数,或者返回一个函数的函数,这样的都成为高阶函数。 三个高阶函数: 一、map(f,sq)函数: 参数: f:是一个函数 sq:是一个可迭代的对象,可以是list、字符串等。 作用:将函数f作用到sq的每一个元素上。 等价于:f(x) for x in sq 解释:map不会改变原有...
导读:在这篇文章中,我将总结新老Python程序员常犯的一些错误,以帮助你们在自己的工作避免犯同样或类似错误。 在这篇文章中,我将总结新老Python程序员常犯的一些错误,以帮助你们在自己的工作避免犯同样或类似错误。 首先我要说明一下的是,这些都是来源于第一手的经验。我以讲授Python的知识为生。在过去的7年里,我已经给上千名学生讲授上百堂Python的课程,同时看着这些学生们犯同样的错。也就是说,这些是我看着Python初学者...
自己写Python也有四五年了,一直是用自己的“强迫症”在维持自己代码的质量。都有去看Google的Python代码规范,对这几年的工作经验,做个简单的笔记,如果你也在学pythpn,准备要学习python,希望这篇文章对你有用。首先 建议1、理解Pythonic概念—-详见Python中的《Python之禅》 建议2、编写Pythonic代码(1)避免不规范代码,比如只用大小写区分变量、使用容易混淆的变量名、害怕过长变量名等。有时候长的变量名会使代码更加具有...
在面对登陆问题的网站例如向拉钩,大街网,直聘等需要进行模拟登陆的问题, 这里我才用的selenium+chrome的方式,进行获取cookies 然后转化成requests中的cookie 再进行具体的内容的抓取 这里里面遇到问题如下: 1.登陆时候的验证码识别,这里我遇到的是滑块验证码与点击式验证码主要的解决方式借助第三方的平台识别,后面上传具体的代码 以及识别的原理 2.在进行requests访问的抓取的时候,需要...
字典简介:使用键-值(key-value)存储数据,具有极快的查找速度key的特性:1.字典中的key必须唯一2.key必须是不可变对象3.字符串、整数等都是不可变的,可以作为key4.list是可变的,不能作为key 字典的方法: students = {"name":"cxj","age":18,"gender":"男"} 1.字典的取值:dict[key]students["name"] 结果为cxj 2.返回指定键的值,如果值不在字典中返回default值:dict.get(key, default=None)students.get("gender","女") ...
Python标准异常总结AssertionError断言语句(assert)失败AttributeError尝试访问未知的对象属性EOFError 用户输入文件末尾标志EOF(Ctrl+d)FloatingPointError浮点计算错误GeneratorExitgenerator.close()方法被调用的时候ImportError导入模块失败的时候IndexError索引超出序列的范围KeyError字典中查找一个不存在的关键字KeyboardInterrupt用户输入中断键(Ctrl+c)MemoryError内存溢出(可通过删除对象释放内存)NameError尝试...
今天分享正则表达式最后一个特殊字符“\d”,具体的教程如下。 1、特殊字符“\d”十分常用,其代表的意思是数字。代码演示如下图所示。 其中“+”的意思是表示连续,在这里代表的意思是连续的数字。但是输出只有“4”这个字符,原因是贪婪模式所致,在上一篇文章中也有提及。 2、如果想要匹配“2004”,则需要加个特殊字符“?”,如下图所示。此时是非贪婪模式,匹配从前往后进行,且匹配连续的数字,所以得到的输出结果是“2004”...