python
文章平均质量分 79
略...
研发咨询顾问
专注全栈开发和项目管理,诚接商务\业务合作,及问题难点解答和远程协助! 可私信或留言给作者,消息会在6小时内回复哦 (每篇文章末尾有作者名片,可添加联系,秒通过)
展开
-
pythonWord自动化报告通用模板代码处理(对word模板进行修改替换操作)
当然可以下载好python-docx-0.8.11.tar。需要注意,这个替换问题是比较多的,首先变量的关键字表示的个数最好是全部统一,最好是英文字母和数字组合,最好不要含有特殊字符,否者可能替换不成功。还有python删除的word可能会丢失图片以及格式会比原来的还乱,所以复杂的word最好别这么操作。原创 2023-08-19 09:42:54 · 366 阅读 · 0 评论 -
python循环语句
continue语句被用来告诉Python跳过当前循环块中的剩余语句,然后继续进行下一轮循环。)break 语句可以跳出 for 和 while 的循环体。)pass 不做任何事情,一般用做占位语句,用于美观上的好看。)ass 是空语句,是为了保持程序结构的完整性。原创 2023-06-03 14:33:23 · 2964 阅读 · 0 评论 -
条件控制语句
等于,比较两个值是否相等。原创 2023-05-31 11:21:20 · 3534 阅读 · 0 评论 -
Set集合
移除指定元素. 两者均用于删除set中的元素,当使用remove时,若删除目标元素不在指定set()中,则会报错,而discard则不会报错;移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中。是由一个或数个形态各异的大小整体组成的,构成集合的事物或对象称作元素或是成员。判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False。移除集合中的元素,该元素在指定的集合也存在。判断该方法的参数集合是否为指定集合的子集。返回两个集合中不重复的元素集合。原创 2023-05-31 11:20:36 · 3561 阅读 · 0 评论 -
Dictionary字典
删除字典给定键 key 所对应的值,返回值为被删除的值。创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值。)两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。如果键在字典dict里返回true,否则返回false。返回指定键的值,如果值不在字典中返回default值。返回输入的变量类型,如果变量是字典就返回字典类型。)列表是有序的对象集合,字典是无序的对象集合。随机返回并删除字典中的最后一对键和值。计算字典元素个数,即键的总数。返回一个字典的浅复制。原创 2023-05-31 11:19:52 · 3522 阅读 · 0 评论 -
Tuple元组
远行后有一个报错信息 正常的 NameError: name 'tup' is not defined。)tuple元组用 () 标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。)元组是另一个数据类型,类似于 List[ ]截取元素,从第二个开始后的所有元素。)创建元组 中括号可以省略。元组包含了以下内置函数。返回元组中元素最大值。返回元组中元素最小值。原创 2023-05-31 11:17:41 · 3528 阅读 · 0 评论 -
List列表(高级数组)
列表中值的切割也可以用到变量 [头下标:尾下标] ,就可以截取相应的列表,)List列表(列表) 是 Python 中使用最频繁的数据类型。在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)列表对 + 和 * 的操作符与字符串相似。移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。要注意python没有数组的概率,只有列表的说法。从列表中找出某个值第一个匹配项的索引位置。输出从第二个元素开始后的所有元素。统计某个元素在列表中出现的次数。移除列表中某个值的第一个匹配项。原创 2023-05-31 11:16:49 · 3539 阅读 · 0 评论 -
String字符串
原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。检测 str 是否包含在字符串中,如果指定范围 beg 和 end ,则检查是否包含在指定范围内,如果包含返回开始的索引值,否则返回-1。)python三引号允许一个字符串跨多行(如果是双引号就换行频繁拼接),字符串中可以包含换行符、制表符以及其他特殊字符,返回"标题化"的字符串,就是说所有单词都是以大写开始,其余字母均为小写(见 istitle())如果字符串中只包含数字字符,则返回 True,否则返回 False。原创 2023-05-31 11:17:01 · 3511 阅读 · 0 评论 -
Number数字
从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数。返回e的x次幂(ex),如math.exp(1) 返回2.718281828459045。如math.log(math.e)返回1.0,math.log(100,10)返回2.0。返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。返回以10为基数的x的对数,如math.log10(100)返回 2.0。返回数字的绝对值,如math.fabs(-10) 返回10.0。原创 2023-05-31 11:13:56 · 3520 阅读 · 0 评论 -
python运算符
左移动运算符:运算数的各二进位全部左移若干位,由原创 2023-05-31 11:12:46 · 3514 阅读 · 0 评论 -
python基础语法
但是我们可以使用斜杠( \)将一行的语句分为多行显示语句中[], {} 或 () 括号就不需要使用多行连接符。)print 默认输出是换行的, python是没有println函数的。)其中三引号可以由多行组成,编写多行文本的快捷语法,常用于文档字符串,在文件的特定地点,被当做注释。)缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。)在 Python 中,所有标识符可以包括英文、数字以及下划线(_),但不能以数字开头。)Python 中的标识符是区分大小写的。原创 2023-05-31 11:11:25 · 3591 阅读 · 0 评论 -
Anaconda环境安装
开源的Python包管理器)是一个python发行版,包含了conda、Python等180多个科学包及其依赖项。包含了大量的包,使用Anaconda无需再去额外安装所需包。安装需要注意:虚拟机最少4G远行内存,磁盘最少25GB(不包括ISO),如果不满足这个配置,可能会报错。(安装后默认会开启base虚拟环境,有点像虚拟机,里面集成了大量的库, 但要注意和本地主机不一样)(2)增加环境变量(一般不需要在配置环境变量,安装的时候会自动配置,)安装后可以直接输入python, python会自动安装的。原创 2023-05-31 11:10:10 · 3551 阅读 · 0 评论 -
python多线程
None为一直等下去(不超时),0为不等,正数n为等待n秒还不能存入,报Full异常。2)创建threadLock对象的方法 Lock() 和 Rlock() 可以实现简单的线程同步,这两个对象都有 acquire (获取锁)方法和 release (释放锁)方法,对于那些需要每次只允许一个线程操作的数据,可以将其操作放到 acquire 和 release 方法之间。c_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) # 当前时间。原创 2023-04-26 14:00:00 · 675 阅读 · 0 评论 -
python多线程
None为一直等下去(不超时),0为不等,正数n为等待n秒还不能存入,报Full异常。2)创建threadLock对象的方法 Lock() 和 Rlock() 可以实现简单的线程同步,这两个对象都有 acquire (获取锁)方法和 release (释放锁)方法,对于那些需要每次只允许一个线程操作的数据,可以将其操作放到 acquire 和 release 方法之间。c_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) # 当前时间。原创 2023-04-26 09:41:02 · 165 阅读 · 0 评论 -
python正则匹配
放到字符串的中间 才有意义,Ab.*?#结果 ['runoob', 'runoob', 'runoob', 'AA', 'BB', 'CC', 'DD', '']num = re.sub(r'^.*号码:', "小明的号码 ", phone1) # $表示匹配字符串末尾 从后往前匹配。#结果 ['runoob', 'runoob', 'runoob', 'AA', 'BB', 'CC', 'DD']print(re.findall(r'aa', s))#['aa', 'aa', 'aa']有4出有aa。原创 2023-04-26 09:39:44 · 4940 阅读 · 0 评论 -
命名空间和作用域
(2)命名空间的生命周期:命名空间的生命周期取决于对象的作用域,如果对象执行完成,则该命名空间的生命周期就结束(因为程序是重内部先开始执行的)。各个命名空间是独立的,没有任何关系的,所以一个命名空间中不能有重名,但不同的命名空间是可以重名而没有任何影响。(2)全局名称(global names),模块中定义的名称,记录了模块的变量,包括函数、类、其它导入的模块、模块级的变量和常量。(3)局部名称(local names),函数中定义的名称,记录了函数的变量,包括函数的参数和局部定义的变量。原创 2023-04-26 09:38:48 · 51 阅读 · 0 评论 -
python模块
python是import文件 但不一定是类名为文件名 (在别的类中访问跟文件名有关,要用"文件名.属性" 和 "直接用属性" 访问 因为支持单独导入属性)。2)语法:from modname import name1[, name2[, ... nameN]] 不支持通过 包名.方法 访问,只能支持写成单独的方法。2)语法:import module1[, module2[,... moduleN] 支持通过 包名.方法 访问,不支持成单独的方法,但属性可以直接导入。import语句一样。原创 2023-04-26 09:37:18 · 34 阅读 · 0 评论 -
迭代器与生成器
2)__iter__() 方法返回一个特殊的迭代器对象, 这个迭代器对象实现了 __next__() 方法并通过 StopIteration 异常标识迭代的完成。1)把一个类作为一个迭代器使用需要在类中实现两个方法 __iter__() 与 __next__()。5)迭代器有两个基本的方法:iter( ) 和 next( ) 和判断是否有下一个元素的方法。print (next(it)) # 输出迭代器的下一个元素 11。print (next(it)) # 输出迭代器的下一个元素 22。原创 2023-04-26 09:36:56 · 36 阅读 · 0 评论 -
python面向对象
6)方法:类中定义的函数,类的方法与普通的函数只有一个特别的区别它们必须有一个额外的第一个参数名称, 按照惯例它的名称是 self,当然self不是关键字,也可以自定义。2)需要注意圆括号中基类的顺序,若是基类(父类)中有相同的方法名,而在子类使用时未指定,python从左至右搜索 即方法在子类中未找到时,从左到右查找基类中是否包含方法。类变量定义在类中且在函数方法体之外。7)方法重写:如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖(override),也称为方法的重写。原创 2023-04-26 09:35:56 · 42 阅读 · 0 评论 -
错误和异常
2)如果一个异常在 try 子句里(或者在 except 和 else 子句里)被抛出,而又没有任何的 except 把它截住,那么这个异常会在 finally 子句执行后被抛出。# 一些对象定义了标准的清理行为,无论系统是否成功的使用了它,一旦不需要它了,那么这个标准的清理行为就会执行。print("执行else语句") //这条语句的作用是如果没有异常 会执行该语句 ,有异常不会执行,divide(1,0)#一旦抛出了一次 except后面的语句就不会执行 但一定finally会执行。原创 2023-04-26 09:34:09 · 37 阅读 · 0 评论 -
OS操作系统
● mode -- mode为F_OK,测试存在的路径,或者它可以是包含R_OK, W_OK和X_OK或者R_OK, W_OK和X_OK其中之一或者更多。d=os.renames(path+"\\a.txt",path+"\\hmt\\4.txt") #注意 最好写绝对路径 否则可能会出错。d=os.rename(path+"\\1.txt",path+"\\2.txt")#注意 最好写绝对路径 否则可能会出错。○ os.W_OK 包含在access()的mode参数中 , 测试path是否可写。原创 2023-04-25 10:09:23 · 127 阅读 · 0 评论 -
python-IO操作
f = open("C:\\Users\\HMTX\\Desktop\\PanD\\2.txt", "rb+") #源文件内容 HMT.ABCDEFGHI 注意 中文的话可能会乱码报错。f = open("C:\\Users\\HMTX\\Desktop\\PanD\\1.txt", "r+") #源文件内容:HTM2018009507OK。说明1: 当我们应该先读后写,刚开始指针(类似光标)在文件的内容开头,一直读到文件末尾,此时光标在文件的末尾,然后继续写,就类似追加的效果。打开一个文件只用于写入。原创 2023-04-25 10:08:21 · 46 阅读 · 0 评论 -
python数据结构
1)列表方法使得列表可以很方便的作为一个堆栈来使用,堆栈作为特定的数据结构,最先进入的元素最后一个被释放(后进先出)。print("4X3: "+str(matrix2))#结果 4X3: [[1, 5, 9], [2, 6, 10], [3, 7, 11], [4, 8, 12]]print("3X4: "+str(matrix1))#结果 3X4: [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]]print(stack)#结果 [3, 4, 5, 6]原创 2023-04-25 10:04:30 · 37 阅读 · 0 评论 -
python函数操作
list1的地址复制给list2,list1和list2地址都指向了[11,22,33],但方法里面又有修改了指向的对象 但是这个属于可变对象 所以不会新创建。printinfo("hmt", age=20, sex="男") #结果 hmt {'age': 20, 'sex': '男'}2)lambda的主体是一个表达式,而不是一个代码块。(2)加了单星号 * 的参数会以元组(tuple)的形式导入,存放所有未命名的变量参数。1)定义一个函数:给了函数一个名称,指定了函数里包含的参数,和代码块结构。原创 2023-04-25 10:03:28 · 61 阅读 · 0 评论 -
python循环语句
2)continue语句被用来告诉Python跳过当前循环块中的剩余语句,然后继续进行下一轮循环。1)break 语句可以跳出 for 和 while 的循环体。2)pass 不做任何事情,一般用做占位语句,用于美观上的好看。1)ass 是空语句,是为了保持程序结构的完整性。print("continue+")#此句不走。N.4 break与continue。N.2 while else语句。N.3 for循环的语法。N.5 pass是空语句。N.1 while语句。原创 2023-04-25 10:02:56 · 104 阅读 · 0 评论 -
Dictionary字典
但不能写成dict = {['Name']: 'Runoob', 'Age': 7};print("dict['Name']: ", dict['Name'])print("dict['Name']: ", dict['Name']) #输出 dict['Name']: Runoob ,而且元组里面只能是一个元素。删除字典给定键 key 所对应的值,返回值为被删除的值。创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值。返回指定键的值,如果值不在字典中返回default值。原创 2023-04-25 10:01:27 · 60 阅读 · 0 评论 -
数据类型和转换
1)从右到左索引默认-1开始的,最大范围是字符串开头,从左到右索引默认0开始的,最大范围是字符串长度少1,可以通过 name[头下标:尾下标]来范围,加号(+)是字符串连接运算符,星号(*)是重复操作。2)列表中值的切割也可以用到变量 [头下标:尾下标] ,就可以截取相应的列表,从左到右索引默认 0 开始,从右到左索引默认 -1 开始,下标可以为空表示取到头或尾。原创 2023-04-25 10:00:06 · 31 阅读 · 0 评论 -
python基础语法
1)学习 Python 与其他语言最大的区别就是,Python 的代码块不使用大括号 {} 来控制类,函数以及其他逻辑判断。1)Python 可以使用引号( ' )、双引号( " )、三引号( ''' 或 """ ) 来表示字符串,引号的开始与结束必须的相同类型的。2)其中三引号可以由多行组成,编写多行文本的快捷语法,常用于文档字符串,在文件的特定地点,被当做注释。2)缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。3)Python 中的标识符是区分大小写的。原创 2023-04-25 09:58:52 · 114 阅读 · 0 评论