python语法总结

1.变量

(1)命名规则:变量名只能包含字母、数字和下划线,并且数字不能作为首字;变量名中不能包含空格;变量名既简洁又具有代表性;尽量不要使用易混淆字母;大小写字母不是一个变量;不要和python里面的关键字混淆

创建变量时会根据后面的值进行类型的创建

2.字符串

字符串就是一系列字符。在python中,用单引号或者双引号括起来的都是字符串。而在字符串里面可以嵌套单引号或者双引号。如,'w"w"',"w'w'"。下面的表达中将使用String作为字符串名字,来表示字符串的函数。

(1)修改字符串的大小写。

String.lower()    #将字符串转为小写

String.upper()    #将字符串转为大写

String.swapcase()    #大小写互换

String.capitalize()    #首字母大写

String.title()    #将每个单词都以首字母大写的方式展示

(2)合并(拼接)字符串

String2 = String + String1    #利用加号来合并字符串

(3)空白字符串

空白泛指任何非打印字符,如空格、制表符和换行符。

(4)删除空白

String.rstrip()    #去掉字符串右侧的多余的空白

String.lstrip()    #去掉字符串左边多余的空格

String.strip()    #去掉字符串两边多余的空格

上述几个方法是去掉多余的空格,可以把空格换成任何的字符。

(5)查找字符串

String.index(String2)    #查找String2在String中的位置,但是没有找到字符串会报错

String.find(String2)    #查找String2在String中的位置,没有找到字符串会返回-1

(6)比较字符串

if String == String1:    #if-else可以作为字符串比较函数,并且String和String1可以进行截断比较的

String.startswith(String1,start,end)    #用于检查字符串是否是以指定子字符串开头,String1在String的起始检测位置start,字符串结尾检测位置end

String.endswith(String1,start,end)    #用于判断字符串是否以指定后缀结尾,String1在String的起始检测位置start,字符串结尾检测位置end

(7)字符串长度

len(String)    #得到String字符串的长度

(8)追加字符串指定长度的字符串

String = String + String[0:2]    #

(9)翻转字符串

String = String[::-1]    #翻转String字符串

(10)分割字符串

String.split()    #按空格进行字符串分割

(11)连接字符串

' '.split(list)    #list是一个列表,将列表转换为一个字符串

(12)替换字符串

String.replace(str1,str2)    #将str1替换为str2

(13)截取字符串

String[start:end]    #截取起始位置start到终点位置end

String[start:end:increase]    #截取起始位置start到终点位置end,并且按increase进行增加选取

(14)统计字符串出现的次数

String.count(substr,start,end)    #统计substr在String字符串出现的个数

(15)字符串的默认编码

String.encode()    #指定的编码格式编码字符串

String.decode()    #指定编码格式解码bytes对象

(16)字符串判断函数

String.isalnum()    #判断字符串是否全是字母和数字

String.isalpha()    #是否全是字母

String.isdigit()    #是否全是数字

String.isspace()    #是否全是空白字符

String.istitle()    #判断首字母是否是大写的

3.注释

单行注释用#号标示

多行注释'''或者"""之间括起来。

4.列表

列表由一系列特定顺序排列的元素组成,列表中的元素没有任何关系,用[]来表示列表。

列表是有序集合,因此要访问列表的任何元素,只需访问元素的位置或索引就可以访问列表元素,例如,ret[0]。列表中第一个索引为0,而不是1。正索引是从列表正向提取列表元素,负方向则是从列表向前提取列表元素。

(1)访问列表元素

list1[0]    #访问第一个元素

list1[0:1]    #访问前2个元素

在访问的同时就可以进行修改元素,也是按照索引方法进行修改。

(2)添加元素

list1.append()    #在列表后面添加元素

list1.extend()    #将一个列表加入到list中

list1.insert(1,'a')    #将一个元素插入到列表中,第一个参数为插入的位置,第二个元素为插入的元素值

list1 = list1 + list2    #使用+号可以将两个list相加,返回一个新的list

(3)删除元素

del list1[0]    #删除第一个元素,按照索引进行删除

list1.remove(1)    #删除满足首个符合条件的元素,是索引删除方法,也可以删除字符串元素的

list1.pop(1)    #删除单个元素,删除时会返回被删除的元素,默认是最后一个元素。如果没有参数就删除list中最后一杆 元素

(4)返回数字数组最大元素值

max(lsit1)    #返回列表最大元素值

(5)返回数字数组最小元素值

min(list1)    #返回列表最小元素值

(6)数字数组之和

sum(list1)    #数值的总和

(6)返回列表的长度

len(list1)    #返回列表的长度

(7)统计个数

list1.count()    #统计某个元素在类别中出现的次数

(8)翻转列表

list1.reverse()    #翻转列表

(9)列表排序

list1.sort()    #按升序进行排序,同时改变list的顺序

list1.sort(reserver=True)    #降序进行排序,同时改变list的顺序

sorted(list1)    #按升序进行排序,并且不改变list中的顺序,返回一个新的list

上述都是针对单个元素list的,下面将说明多元素的list排序

sorted(iterable, cmp, key, reverse)

iterable是进行迭代的对象,cmp是比较函数,这个具有2个参数,参数值都是从对象中取出的,并且遵守大于返回1,小于返回-1,相等则为0。key主要来进行一个参数的排序。reverse是进行降序、升序的设定。

sorted(list1,cmp=lambda x,y:cmp(x[1],y[1]))

sorted(list1,key=lambda s:s[1])

(10)遍历列表

使用for语句进行遍历,如,

for word in list1:

    print(word)

(11)创建数字列表

range(start,end,iter)    #该函数能够生成一系列的数字。从start到end-1,iter为增加的步长

list1 = list(range(1,5))     #得到[1,2,3,4],可以写成list1 = [word for word in range(1,5)]

(12)复制列表

list2 = list1[:]    #将list1的所有元素都赋值到list2中

(13)检查特定值是否在列表中

if word (not) int list1:    #判断word是否在列表中

5.元组

列表可以存储在程序运行期间可能变化的数据集,是可以修改的。而元组可以创建一系列不可以修改的元素。数组是用[]表示,元组是用()来标识的。

可以利用list中的选择元素的方法进行选择元素,也可以用for来遍历元组中的值。但是,不能改变元组的元素,可以给存储元组的变量赋值。

6.if-else语句

if 条件1:

    语句1

elif 条件2:

    语句2

当条件1成立时,将会执行语句1,而条件1不成立时,条件2成立时,将执行语句2.

7.字典

字典是一个键-值对。没个键都与一个值相关联,字典用{}括起来。

字典中不允许同一个键出现两次,当出现2次时,第一次的值将会被覆盖。键必须不可变,所以可以用数字,字符串或元组充电,列表则不行。

(1)访问字典中的值

dict1['name']    #将相应的键放入到[]中即可,而当字典中没有键时会显示错误信息

(2)添加键-值对

dict1['color'] = 'green'    #将键放入到[]中,而值放到等会后面。

(3)修改字典

dict1['color'] = 'red'    #只需要按索引键进行重新赋值就可以

(4)删除字典元素

del dict1['color']    #删除键为color的字典元素

dict1.clear()    #清除词典所有条目

del dict1    #删除词典

(5)遍历字典

for key,value in dict1.items():    #存储键-值,键:key,值:value

for name in dict1.keys()    #遍历dict的所有键

for value in dict1.values()    #遍历dict的所有值

(6)嵌套

字典存储列表,如,dict_0={},dict_1={},user = [dict_0,dict_1]

字典存储字典,如,user = {'name'={}},user = {'name'=[]}

8.输入函数

Input()    #用户输入一些文本,并将文本存储到一个变量中,该文本是以字符串形式存储的,需要其他类型时强制转换即可

9.while函数

while 条件1:

    语句1

当while条件成立时,将执行语句1

10.break和continue

break终止整个循环,当执行break时,将不再运行循环中余下的代码;

continue是跳出当次循环,继续执行循环中的下一次循环;

11.文件

(1)读取整个文件

open('sample.txt')    #返回一个表示文本的对象

with open('sample.txt'):    #当with出现错误时,都会进行对当前对象进行清理工作,而无论with中无论出现任何错误,都会执行close方法

常见open打开文本的读写方法:

    w以写方法打开

    a以追加的模式打开

    w+以读写模式打开

    r+以读写模式打开

os.listdir(dir)    #获得单个目录结点的子结点

file.write()    #写入文件

file.close()    #关闭文件

open('sample.txt').readline()    #基于行的读写


12.numpy函数汇总

numpy.ndim    #获取数组的行数

numpy.shape[0]    #获得数组的第一维长度,就是行的个数

numpy.shape[1]    #获取数组的第二维长度,就是列的个数

numpy.nditer(a,op_flags=['readwrite])    #迭代数组a,就是访问a数组中的元素,默认情况下是只读模式,为了方便对数组修改,需要制定readwrite模式。

numpy.random.random((2,3))    #随机矩阵进行初始化,值的范围是-1到1之间

numpy.random.uniform(low,high,size)    #从一个均匀分布[low,high)中随机采样,size为样本数目,为int或者元组。如下图所示。


numpy.shape    #输出array的大小

repr(obj)    #将obj对象转换为供解释器读取的形式,返回一个string类型

numpy.hstack(tup)    #参数tup可以是元组,列表或者numpy数组,返回结果为numpy数组。按照水平(按列)顺序把数组给叠加起来

nmpy.vstack(tup)    #参数tup可以是元组,列表或者numpy数组,返回结果为numpy数组。按照水平(按行)顺序把数组给叠加起来

numpy[:,0]    #是取出numpy二维数组中第一维度中的所有数据,组成一下新的numpy

numpy[:,1]    #是取出numpy二维数组中第二维度中的所有数据,组成一下新的numpy

numpy[:,0:1]    #是取出numpy二维数组中第一、第二列的所有数据,组成一下新的numpy

numpy.array([image_list,label_list])    将2个numpy生成一个新的numpy,生成的格式如下[[image_list[0],image_list[1]] [label_list[0],label_list[1]]

numpy.transpose()    #矩阵转置(numpy.T)

numpy.random.shuffle(temp)    #打乱temp的顺序

numpy.arange(start,end,plus)    #从start到end,然后按步长增加

numpy.arange(15).reshape(3,5)    #从0到14一共15个数,生成3*5的矩阵

numpy.zeros((3,4),dtype=np.int32)    #生成3*4的0矩阵,并且默认的值是float类型。可以通过dtype可以设置值的类型

numpy.linspace(start,end,num)    #从start到end中平均找到num个数字,会自动进行平均计算

numpy.dot(A,B)    #矩阵进行相乘(等于A.dot(B)),A*B是进行内机相乘

numpy.exp(B)    #求B的e的次方的值

numpy.sqrt(B)    #求B的平方根矩阵

numpy.floor(B)    #向下取整

B.ravel()    #将矩阵进行拉长,转换为1*n的

B.shape = (6,2)    #转换为6*2矩阵

numpy.hsplit(B,num)    #将矩阵B平均的切成num份,按列进行切分

numpy.hsplit(B,(num1,num2))    #将矩阵B按照num1、num2进行切分

numpy.vsplit(a, num)    #将矩阵B平均的切成num份,按行进行切分

B.view()    #进行B矩阵的浅复制 

A=B.copy()    #B是A的一个初始化,A和B可以进行各自操作

B.argmax(axis=0)    #返回矩阵中每列的最大值的index,axis=1表示按行进行查找

numpy.tile(B,(num1,num2))    #将B矩阵进行复制,扩充到num1*num2 

numpy.sort(B,axis=1)    #B进行按行排序

numpy.argsort()    #索引排序

13.pands

主要是用来数据预处理方面

info = pands.read_csv()     #读取csv文件

info.dtypes    #会打印每个列的类型

info.head(num)    #显示出num条数据

info.tail(num)    #显示最后的num条数据

info.columns    #打印出列的名字

info.shape    #打印出数据的条数及列数

info.loc[num]    #打印出第num条数据

info.columns.tolist()    #将列转换为list

info.sort_values(string, inplace=True,ascending=True)    #按照string列进行排序,inplace表示新生成一个dataframe,ascending进行升降序。

info['age'].mean()    #求age列的平均值



参考文献:

https://www.cnblogs.com/hanmolabi/p/8179765.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值