目录

  • 1.Python基础复习
  • 2.数值函数
  • 2.1复数类型:
  • 2.2内置的数值运算函数(共6个)
  • 2.3内置的数字类型转换函数(共3个)
  • 2.4math库的数学常数
  • 2.5math库的高等特殊函数
  • 2.6math库的幂对数函数
  • 2.7math库的三角运算函数
  • 3.基本的字符串操作符
  • 4.内置的字符串处理函数
  • 5.常用的内置字符串处理方法
  • 5.1 程序的循环结构:
  • 5.2random库的常用函数
  • 5.3程序的异常处理
  • 5.3.1异常处理的高级用法
  • 6.datetime库概述
  • 6.1datetime类常用属性
  • 7.python内置函数
  • 8.组合数据类型
  • 8.1序列类型
  • 8.2集合类型
  • 8.3列表类型
  • 9.字典类型
  • 9.1jieba库的使用
  • 10.文件和数据格式化
  • 11.PIL库的使用
  • PIL库Image类解析


1.Python基础复习

日期和时间的输出

from datetime import datetime
now=datetime.now()
now.strftime("%x")  #输出其中日期部分
now.strftime("%X")  #输出其中时间部分

python无法进行高精度浮点数运算,例如1.23456789*2.3456789,但是我们可以通过去掉小数点,当整数运算,则可以确定精准值:

python显示当前时间 精确到毫秒 python的datetime.now()精度_python显示当前时间 精确到毫秒

拓展:高精度浮点运算类型
Python通过标准库decimal提供了一个更精度的数字类型Decimal,并可以使用getcontext().prec参数自定义浮点数精度的位数,例如:

>>> import decimal
>>> a=decimal.Decimal('3.141592653')
>>> b=decimal.Decimal('4.123232323232')
>>>> decimal.getcontext().prec=5
>>> a*b
#Decimal('12.954')

2.数值函数

2.1复数类型:

前言:
复数类型表示数学中的复数。很久以前,数学界被求解如下等式难住了:
x2 = -1
这是因为任何实数都不是上述等式的解。直到18世纪,数学家发明了“虚数单位”,记为j,并规定j=√-1。围绕这个特殊数字出现了新的数学分支,产生了“复数”。对于一个实数n,根据上述定义,nxjxj的值是-n


复数可以看做是二元有序实数对(a,b),表示为a+bj,其中,a是实数部分,简称实部,b是虚数部分,简称虚部。 12.3+4j 对于复数z,可以用`z.real`和`z.imag`分别获得它的实数部分和虚数部分,例如:

python显示当前时间 精确到毫秒 python的datetime.now()精度_python显示当前时间 精确到毫秒_02

分析(1.23e-4+5.67e+8j).real
1.23e-4意思是1.23乘以10的-4次幂 也就是0.000123
加上后面的5.67e+8j.real 是5.67乘以e的8j.real次幂,8j.real是复数的虚数部分为0,因此结果是0.0
最终答案就是0.000123

总结:复数类型在科学计算中十分常见,基于复数的运算属于数学的复变函数分支,该分支有效支撑了众多科学和工程问题的数学表示和求解。python直接支持复数类型,为这类运算求解提供了便利。

2.2内置的数值运算函数(共6个)

函数

描述

abs(x)

x的绝对值

divmod(x,y)

(x//y,x%y),输出为二元组形式(也称为元组类型),//为整除%为取余

pow(x,y[,z])

pow(x,y),它与x**y相同,取x的y次方

round(x[,ndigits])

对x四舍五入,保留ndigits位小数

max(x1,x2,x3)

返回其中最大值

min(x1,x2,x3)

返回其中最小值

2.3内置的数字类型转换函数(共3个)

函数

描述

int(x)

将x转

换为整数,x可以是浮点数或字符串float(x)

返回浮点数x或者字符串x所对应的整数类型

complex(re[,im])

生成一个复数,实部为re,虚部为im,re可以是整数、浮点数或字符串,im可以是整数或浮点数但不能为字符串

2.4math库的数学常数

python显示当前时间 精确到毫秒 python的datetime.now()精度_python_03

2.5math库的高等特殊函数

python显示当前时间 精确到毫秒 python的datetime.now()精度_python显示当前时间 精确到毫秒_04

2.6math库的幂对数函数

python显示当前时间 精确到毫秒 python的datetime.now()精度_python基础_05

2.7math库的三角运算函数

python显示当前时间 精确到毫秒 python的datetime.now()精度_python_06

3.基本的字符串操作符

操作符

描述

x+y

连接两个字符串x与y

x*n

复制n次字符串x

x in s

如果x是s的子串,返回True,否则返回false

str[i]

索引,返回第i个字符串

str[N:M]

切片,返回索引第N到第M的字串,其中不包含M

4.内置的字符串处理函数

函数

描述

len(x)

返回字符串x的长度,也可以返回其他组合数据类型元素个数

str(x)

返回任意类型x所对应的字符串形式

chr(x)

返回Unicode编码x对应的单字符

ord(x)

返回单字符串表示的Unicode编码

hex(x)

返回整数x对应十六进制数的小写形式字符串

oct(x)

返回整数x对应八进制数的小写形式字符串

5.常用的内置字符串处理方法

python显示当前时间 精确到毫秒 python的datetime.now()精度_字符串_07


python显示当前时间 精确到毫秒 python的datetime.now()精度_python显示当前时间 精确到毫秒_08

5.1 程序的循环结构:

continue和break的区别:
continue语句只结束本次循环,break则是结束整个循环过程

5.2random库的常用函数

函数

描述

seed(a=None)

初始化随机数种子,默认为当期系统时间

random

生成一个[0.0,1.0)之间的随机小数

randint(a,b)

生成一个[a,b]之间的整数

getrandbits(k)

生成一个k比特长度的随机数

randrange(start,stop[,step])

生成一个[start,stop)之间以step为步数的随机整数

uniform(a,b)

生成一个[a,b]之间的随机小数

choice(seq)

从序列类型,例如列表中随机返回一个元素

shuffle(seq)

将序列类型中的元素随机排列,返回打乱后的序列

sample(pop,k)

从pop类型中随机选取k个元素,以列表类型返回

5.3程序的异常处理

try:
	...
except:
	...

5.3.1异常处理的高级用法

支持多个except语句,语法格式如下:

try:
	...
except<异常类型1>:
	...
except<异常类型N>:
	...
except:
	...

还可以和else和finally保留字配合使用,语法格式如下:

try:
	...1
except<异常类型1>:
	...2
else:
	...3
finally:
	...4
	
#没异常则执行1;任何情况都会执行4;1没问题且2有问题则执行3

6.datetime库概述

from datetime import datetime
datetime.now
返回一个datetime类型,表示当前的日期和时间,精确到微妙
datetime.utcnow()
返回一个datetime类型,表示当前日期和时间对应的UTC(世界标准时间)
也可以直接使用datetime构造一个日期和时间对象:
datetime(year,month,day,hour=0,minute=0,second=0,microsecond=0)
例如:

datetime(2019,11,2,22,33,34,7)
表示2019年11月2日22:33(34秒,7微妙)

6.1datetime类常用属性

python显示当前时间 精确到毫秒 python的datetime.now()精度_python显示当前时间 精确到毫秒_09

7.python内置函数

python显示当前时间 精确到毫秒 python的datetime.now()精度_python基础_10


all() 函数一般针对组合数据类型,如果其中每个元素都是True,则返回True,否则返回false(0,空"",空列表[]等都被当做false)。

any() any与all相反,any中只要任意一个值为True则返回True

hash() 函数对于能够计算哈希的类型返回哈希值。

id() 函数对于每一个数据返回唯一的编号,数据不同编号不同,可以通过对比两个变量编号是否相同,判断数据是否一致。

reversed() 函数返回输入组合数据类型的逆序形式

ls=[1,2,3,5]
list(reversed(ls))

sorted() 函数对一个序列进行排序,默认从小到大

8.组合数据类型

8.1序列类型

a=1,2,3,4,5
b="cat","dog","tiger"

序列类型的通用操作符和函数

操作符

描述

x in s

如果x是s的元素,返回True,否则返回false

x not in s

如果x不是s的元素,返回True,否则返回false

s + t

链接s和t

s * n

将序列s复制n次

s[i]

索引,返回序列的第i个元素

s[i:j]

分片,返回包含序列s第i到j个元素的子序列

s[i:j:k]

步骤分片,返回包含序列s第i到j个元素以k为步数的子序列

len(s)

返回s的长度

min(s)

序列s中的最小元素

max(s)

序列s中的最大元素

s.index(x[,i[,j]])

序列s中从i开始到j位置中第一次出现元素x的位置

s.count(x)

序列s中出现x的总次数

元组是序列类型中比较特殊的类型,应为它一旦被创建就不能被修改

>>> creature="cat","dog","tiger"
>>> include=("aaa","bbb",creature)
>>> include
('aaa', 'bbb', ('cat', 'dog', 'tiger'))
>>> include[0]
'aaa'
>>> include[0][0]
'a'
>>> include[-1]
('cat', 'dog', 'tiger')
>>> include[-1][0]
'cat'
>>> include[-1][0][0]
'c'

8.2集合类型

集合不存在顺序,用{}表示

>>> s={1,10,"apple","cat",11,17}
>>> s
{1, 10, 11, 17, 'cat', 'apple'}

set(),set函数可以用于生成集合,输入的参数可以是任何组合数据类型,返回结果是一个无重复且任意排列的集合:

>>> set("apple")
{'p', 'l', 'a', 'e'}

集合类型的操作符

python显示当前时间 精确到毫秒 python的datetime.now()精度_学习python_11


集合类型的操作函数或方法

python显示当前时间 精确到毫秒 python的datetime.now()精度_学习python_12

8.3列表类型

>>> a=[1,2,3,4,"cat","dog"]
>>> a
[1, 2, 3, 4, 'cat', 'dog']
>>> p="中国是一个伟大的国家!"
>>> list(p)
['中', '国', '是', '一', '个', '伟', '大', '的', '国', '家', '!']

列表类型特有的函数或方法

python显示当前时间 精确到毫秒 python的datetime.now()精度_python显示当前时间 精确到毫秒_13

9.字典类型

>>> a={"1+1":2,"2+2":4,"中国":"北京"}
>>> a
{'1+1': 2, '2+2': 4, '中国': '北京'}
>>> a["1+1"]
2

字典中还可以这样添加元素:

>>> d={}
>>> d["中国"]="北京"
>>> d
{'中国': '北京'}
>>> d["2^10"]=1024
>>> d
{'中国': '北京', '2^10': 1024}

字典类型的函数和方法

python显示当前时间 精确到毫秒 python的datetime.now()精度_python显示当前时间 精确到毫秒_14

9.1jieba库的使用

jieba库文章分开写了,如有需要请点击转跳链接:

——————jieba库的使用——————

10.文件和数据格式化

文件的打开模式

文件的打开模式

含义

r

只读模式,如果文件不存在则返回异常FileNotFoundError(默认值)

w

覆盖写模式,文件不存在则创建,存在则完全覆盖

x

创建写模式,文件不存在则创建,存在则返回异常FileExistsError

a

追加写模式,文件不存在则创建,存在则在文件最后追加内容

b

二进制文件模式

t

文本文件模式(默认值)

+

与r/w/x/a一同使用,在原则功能基础上增加同时读写功能

文件的读写

操作方法

含义

<file>.readall()

读取整个文件内容,返回一个字符串或字节流*

<file>.read(size=-1)

从文件中读入整个文件内容,如果给出参数,读入前size长度的字符串或字节流

<file>.readline(size=-1)

从文件中读入一行内容,如果给出参数,读入该行前size长度的字符串或字节流

<file>.readlines(hint=-1)

从文件中读入所有行,以每行为元素形成一个列表,如果给出参数,读入hint行

文件内容写入方法

方法

含义

<file>.write(s)

向文件写入一个字符串或字节流

<file>.writelines(lines)

将一个元素全为字符串的列表写入文件

<file>.seek(offset)

改变当前文件操作指针的位置,offset的值:0——文件开头;1——当前位置;2——文件结尾

11.PIL库的使用

pip install pillow安装pillow库

PIL库Image类解析

from PIL import image
image类的图像读取和创建方法

方法

描述

Image.open(filename)

根据参数加载图像文件

Image.new(mode,size,color)

根据给定参数创建一个新的图像

Image.open(StringIO.StringIO(buffer))

从字符串中获取图像

Image.frombytes(mode,size,data)

从根据像素点data创建图像

Image.verify()

对图像文件完整性进行检查,返回异常

加载一个图像:

from PIL import image
im=image.open("D:\\1.jpg")

image类的常用属性

属性

描述

Image.format

标识图像格式或来源,如果图像不是从文件读取,值为None

Image.mode

图像的色彩模式,L为灰度图像,RGB为真彩色图像,CMYK为出版图像

Image.size

图像宽度和高度,单位是像素(px),返回值是二元元组(tuple)

Image.palette

调色板属性,返回一个ImagePalette类型

查看已读取的图像文件的属性:

print(im.format,im.size,im.mode)

Image类的序列图像操作方法

方法

描述

Image.seek(frame)

跳转并返回图像中的指定帧

Image.tell()

返回当前帧的序号

Image类的图像转换和保存方法

方法

描述

Image.save(filename,format)

将图像保存为filename文件名,format是图片格式

Image.convert(mode)

使用不同的参数,转换图像为新的模式

Image.thumbnail(size)

创建图像的缩略图,size是缩略图尺寸的二元元组

Image类的图像旋转和缩放方法

方法

描述

Image.resize(size)

按size大小调整图像,生成副本

Image.rotate(angle)

按angle角度旋转图像,生成副本

python显示当前时间 精确到毫秒 python的datetime.now()精度_python显示当前时间 精确到毫秒_15

python显示当前时间 精确到毫秒 python的datetime.now()精度_python_16

python显示当前时间 精确到毫秒 python的datetime.now()精度_python显示当前时间 精确到毫秒_17