-
Python开发---利用正则表达式实现计算器算法
Python开发——利用正则表达式实现计算器算法(1)不使用eval()等系统自带的计算方法(2)实现四则混合运算、括号优先级解析思路: 1、字符串预处理,将所有空格去除 2、判断是否存在括号运算,若存在进行第3步,若不存在则直接进入第4步 3、利用正则表达式获取最底层括号内的四则运算表达式 4、将四则运算表达式进行预处理:表达式开头有负数时,在表达式前加上一个0 5、利用re.split()、re.findall()方法,通过加减符号,对四则运算进行拆分...
-
Python 的* 和** 关于参数解包和参数传递
可变参数在Python函数中,还可以定义可变参数。顾名思义,可变参数就是传入的参数个数是可变的,可以是1个、2个到任意个,还可以是0个。我们以数学题为例子,给定一组数字a,b,c……,请计算a2 + b2 + c2 + ……。要定义出这个函数,我们必须确定输入的参数。由于参数个数不确定,我们首先想到可以把a,b,c……作为一个list或tuple传进来,这样,函数可以定义如下:def calc(numbers): sum&nb...
-
记录学习Python里文本文件读写操作的方法
读写文本文件是工作中经常会遇到的一种需求,今天这里记录一下学习Python里读写文本文件的方法。open方法Python里打开和创建文本文件都是通过open方法来操作的,例如:f = open('test.txt') print(f.read()) f.close()open方法的第二个参数mode是打开文件的模式,默认值为"r",根据Python源代码注释说明可知open方法的mode参数支持如下几种模式打开或者创建文本文件:'r' &n...
-
Python下使用ctypes调用DLL的方法简单总结
以前一直是做的Windows下的编程,经常要与动态链接库DLL打交道,现在开始玩Python了,总想着尝试玩下混合编程,而且Python的很多底层库也是基于C++实现的,所以就尝试了下使用ctypes来调用DLL的方法,今天把这些尝试简单总结下记录下来!本文里的Python版本为:Python 3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 17:00:18) [MSC v.1900 64 bit (AMD64)] on win32,DLL采用Delphi语言编写的,如果不了解Delp...
-
Python 中的几种矩阵乘法 np.dot, np.multiply, *
本文主要是转载分享Python中的numpy模块里的几种矩阵乘法,希望对大家有帮助!1. 同线性代数中矩阵乘法的定义: np.dot()np.dot(A, B):对于二维矩阵,计算真正意义上的矩阵乘积,同线性代数中矩阵乘法的定义。对于一维矩阵,计算两者的内积。见如下Python代码import numpy as np # 2-D array: 2 x 3 two_dim_matrix_one = np.arr...
-
解决在PyCharm里无法识别Python里安装的模块的方法
最近两天重装了一次操作系统,重新配置了Python开发环境,也安装了一些常用的第三方模块,却在PyCharm里编译之前写好的代码的时候,出现了类似如下的错误:Traceback (most recent call last): File "E:/MyCodes/Python/demos/XuePython.wang/Pywinauto/Pywinauto_list.py", line 4, ...
-
吾八哥学Python(十八):Python里的面向对象
在我们平时的编程中,面向对象是经常要使用到的一种技术,Python里也提供了面向对象的所有基本功能。在Python里的类支持多继承,支持覆盖类的任何方法,在类的某个方法里也可以调用基类里的同名方法。下面来看一些具体的实例学习!类的定义类的定义比较简单,具体如下:class MyClass: id = 1 name = "名称" &nb...
-
Python里实现发送邮件的方法
编程过程中经常会遇到有要发送邮件的情况,本文主要是介绍了一下在Python里实现发送邮件的方法,当然是借助了第三方的smtp服务器来实现的,这里我采用的是腾讯的smtp服务器,发送邮件的关键代码为:import smtplib from email.mime.text import MIMEText from email.header import Header smtp_server = "smtp.qq...
-
Python里的Time模块推算时间的方法
案例: 2008年8月8日20:08:08 往后88,888,888秒是哪天?星期几?日期->时间戳(浮点数)->可以做数学运算演示:import time # 构造日期的元组,元组必须是9位标准的 tuple01 = (2008, 8, 8, 20, 8, 8, 0, 0, 0) # 把指定的日期转换为时间戳 chinese_time = ...
-
Python垃圾回收机制的思考
一、前言 Python 是一门高级语言,使用起来类似于自然语言,开发的时候自然十分方便快捷,原因是Python在背后为我们默默做了很多事情,其中一件就是垃圾回收,来解决内存管理,内存泄漏的问题。 内存泄漏:当程序不停运行,有一部分对象没有作用,但所占内存没有被释放,服务器内存随时间越来越少,最终导致系统的崩溃,所以内存泄漏是一个需要重点关注的问题。二、引用计数 Python 标记一个对象是否还有用的方法就是用引用计数,以下情形会为该对象的计数+1: 1. 创建时 2. 被引...