python基础

Posted jizast

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python基础相关的知识,希望对你有一定的参考价值。

lambda表达式:

lambda表达式又称匿名函数,一般形式为:

Lamdba  参数(,参数2…): 执行语句

他等同于

def fuc(参数):

执行语句

return 执行结果

lambda与普通函数最大的区别就是:lambda的主题是一个单个的表达式,而不是代码块,这就是为什么lambda不能写多行的原因。

为什么要使用lambda呢?

因为他起到一个速写的作用,同时其匿名的特性代表你无须为其分配名称,较为简洁。

 

------------------------------------------------分割线-----------------------------------------------------

python的内置函数

一下图片总结了内置函数的内容:

 

下面一条条来讲。

 

abs()     #求绝对值函数,返回入参的绝对值,

#abs(-1) = 1

 

all()any()

allany是逻辑操作,all是求交集,any求并集。即all的入参全为真是返回1any的入参有为真是返回真

#All(1,0) = 0 any(0,1) = 1

 

ascii()

返回对象的__repr__方法,不知道有何用。

 

bin(),bool(),float(),int(),oct(),hex(),str()

以上函数分两类:

第一类为数学类型转换函数,bin(),oct(),hex()分别对应十进制转换为二进制,八进制,16进制

 第二类为变量类型转换函数,bool(),float(),int(),str()分别对应的是转换为布尔型,浮点型,整形,字符串类型。

 

callable(fuc)

检查传入参数是否可调用并返回检查结果

 

chr(i),ord()

chr返回整数i对应的ascii字符,而ord则将ascii字符转换回i,基本没用。

 

classmethod(),staticmethod()

这两项分别对应类方法和静态方法,还没学到暂时留空。

 

compile()

将传入字符串编译为python可执行的语句,并返回。

 

complex(real,imag)

这是一个创建复数的方法,这个复数由realimag组成。

 

delattr(obj,name),getattr(obj,name),hasattr(obj,name)setattr(obj,name)

这四个函数都是操作对象属性的方法。

delattr可以删除obj对象的name属性,getattr可以获取obj对象的name属性并返回,hasattr是判断obj对象是否有name属性,并返回判断结果,setattr是设置obj对象的那么属性的值。

 

dict(),list(),set(),frozenset(),tuple()bytearray()

以上六个函数皆为创建或转换数据类型的函数。

dict()为创建或转换为字典的函数,list()是创建或转换为列表的函数,set()是创建或转换为集合的函数,frozenset()则是创建不可变的集合,tuple()为创建或转换为元组的函数,bytearray()比较特殊,他是转换字符串为字节数组的函数。

 

dir()

dir函数可以返回对象里的所有方法,以列表方式返回。

 

divmod(a,b)

divmod是以元组的方式返回a/b的结果

#divmod(10,3) = (3,1)

 

enumrate()

enumrate用来遍历传入序列的“索引-值”。

 

eval(),exec()

eval可以将传入字符串转换为表达式执行,exec()同理但有区别,因为exec其实并非函数,所以传入exec的字符串可以只是一个表达式的一部分,而eval必须是完整的表达式才行。

 

filter(fuc,a),map(fuc,a)

这两个函数编程工具,第一个参数为处理方式(接受函数),a则为待处理对象

filter能按照fuc要求返回afilter结果

map则按fuct要求,处理a的每个元素

 

zip(a,b)

zip会讲a序列与b序列进行组合后返回。

#a = [1,2,3]

#b = [2,4,6]

print(zip(a,b)) =[(1,2),(2,4),(3,6)]

 

globals(),locals()

这俩个函数均为打印模块变量,locals打印模块的所有局部变量,globals则是打印函数的所有全局变量。

 

hash()

求传入值的哈希值。

 

help()

获取传入函数的帮助命令。

 

id()

获取传入值的内存地址。

 

input()

接受键盘输入并将其返回。

 

isinstance(),issubclass()

这俩函数是判断函数,一个是判断是否为实例,一个是判断是否为子类。

 

iter()

iter函数用于将转入值转换为可迭代的,即支持next()方法寻找下一值。

 

len()

获取传入值的字符长度。

 

max(),min(),sum()

这三个都是运算函数,max返回传入序列的最大值,min返回最小值,sum返回和。

 

memoryview()

本函数是返回对象的内存查看对象,应用很少。

 

next()

返回可迭代对象的下一个元素,同时将指针移向下一个元素。

 

object()

object并不是函数,而是一个基类,创建任何类时,最好都要从object继承。

 

open()

open函数在下面会细说。

 

pow(a,b)

pow函数其实就是返回a**b的运算结果,没用。

 

property()

目前老师还没讲,暂时留空。

 

range()

创建一个范围的range序列,可转换为各种数据类型比如列表元组等,比如list(range(1,5)) = [1,2,3,4,5]

 

repr()

repr函数与str函数类似,但是repr函数会转换成字符串的原始形态,而str会调整成更好读的形态。

 

reversed()

返回传入序列的颠倒值。reversed([1,2,3]) = [3,2,1]

 

round()

求传入数的四舍五入值。

 

slice(start,stop)

对对象进行切片操作,可以不指定stopstartstop为字符位置。

 

sorted()

对传入序列进行排序操作。

 

type()

获取传入对象的数据类型。

 

super()

获取传入对象的超类。

 

vars()

vars函数为locals函数的升级版,当不传入参数是,varslocals函数的作用是一样的。当指定类后,可以只返回指定类的属性。

 

------------------------------------------------分割线--------------------------------------------------

python文件操作

上一节没说的open函数其实就是python操作文件的函数。

python支持如下文件操作方式:

.基本操作模式

1.r模式   2.w模式     3.a模式     4.x模式

r模式是指读模式,当程序以r模式打开时,文件可读不可写,文件不存在则报错。

w模式是指写模式,当程序以w模式打开时,文件可写不可读,写入方式为覆盖,即文件指针在最前,并清空文件,若文件不存在则创建。

a模式是指追加模式,当程序以w模式打开时,文件可写不可读,写入方式为追加,即文件指针在末尾,若文件不存在则创建。

x模式不常用。

.二进制操作模式

1.rb模式   2.wb模式   3.ab模式   4.xb模式

以上模式皆为二进制读取模式,即操作方法一致,但读取的内容按不进行字符转换,保留原始形态。

.扩展操作模式

1.r+模式   2.w+模式  3.a+模式    4.x+模式

1.r+r模式的区别在于,可以写。

2.w+w模式的区别在于,可以读。

3.a+模式与a的区别在于,可以读。

三.文件指针

python文件操作完全依赖指针,但这也很不好用,操作指针的函数是seek()函数,例如:

SAM文件包含:1234567890

1 with open(\'SAM\', \'r\') as f:
2 
3   print(f.readline())
4 
5   f.seek(5)
6 
7   print(f.readline())

则输出如下结果:

1234567890
67890

seek函数向前移动了文件指针,移动位置为5。

当已w模式打开时,如移动n个指针,则修改文件会清空n个字符后的所有字符,再写入文件。

  

以上是关于python基础的主要内容,如果未能解决你的问题,请参考以下文章

常用python日期日志获取内容循环的代码片段

python 有用的Python代码片段

Python 向 Postman 请求代码片段

python [代码片段]一些有趣的代码#sort

使用 Python 代码片段编写 LaTeX 文档

python 机器学习有用的代码片段