tomako123

导航

python中各种函数的用法及注意事项(持续记录)

比较函数

使用这个函数要先导入operator模块:

import operator

常用的比较函数(> >= < <= == !=)依次在下列出
operator.gt(a,b)
operator.ge(a,b)
operator.lt(a,b)
operator.le(a,b)
operator.eq(a,b)
operator.ne(a,b)

直接赋值和使用copy函数的区别

!/usr/bin/python3

a = {'user':'aooa','num':[1,2,3]}
b = a
c = a.copy()

a['user']='root'
a['num'].remove(1)
print(a)
print(b)
print(c)

输出结果:
{'user': 'root', 'num': [2, 3]}
{'user': 'root', 'num': [2, 3]}

解析:这里涉及到一个直接赋值,浅拷贝和深拷贝的概念。
直接赋值相当于是直接引用原本的内容,原本内容修改之后被赋值的对象也会跟着修改内容。

浅拷贝相当于新建了一个新的对象(父目录)但是对象中的子目录(内容)是引用。在这个例程中
a['user']='root'相当于是建立了一个具有新地址的a,更改了其中的字符串内容,后续的a都代指这
个新的,但是原本copy来的c的父目录也就是这个地址还是对应的原来的,所以里面的字符串还是对应
的原来的。后续的remove操作是在原本的a里面进行的,而子目录又是引用的原本的a,所以num更改了

深拷贝就相当于完全复制了一个新的,不受原本那个对象变更的影响。

range()函数和len()函数

range()函数有三种用法:
1.range(n):
产生从0开始到n-1的整数数列
2.range(a,b)
产生从a开始到b-1的整数数列
3.range(a,b,c)
产生从a开始到b-1,步长为c
len函数用法:
1.计算字符串的长度:
s = "hello good boy doiido"
len(s)
输出 21
2.计算列表的元素个数:
l = ['h','e','l','l','o']
len(l)
输出 5
3.计算字典的总长度(即键值对总数):
d = {'num':123,'name':"doiido"}
len(d)
输出 2
4.计算元组元素个数:
t = ('G','o','o','d')
len(t)
输出 4

end的用法:

python在print()输出语句中出现 end=‘ ’的语句,简单来说,如果没有end=‘ ’,每次print语句都会自动换行,而有了这个语句,数据就不会自动换行,而是在输出的数据后面加上空格(空格数取决于引号里面的空格数)

ex:

list = [1,2,3,4]

it = iter(list)

for x in it:
print(x,end=" ")
输出结果:1 2 3 4

super():

用子类对象调用父类对象已被覆盖的方法

ex:
#!/usr/bin/python3

class Parent: # 定义父类
def myMethod(self):
print ('调用父类方法')

class Child(Parent): # 定义子类
def myMethod(self):
print ('调用子类方法')

c = Child() # 子类实例
c.myMethod() # 子类调用重写方法
super(Child,c).myMethod() #用子类对象调用父类已被覆盖的方法

输出结果:
调用子类方法
调用父类方法

id():

可以用来查看某个量的内存地址

匿名函数lambda

Python 使用 lambda 来创建匿名函数。

lambda 函数是一种小型、匿名的、内联函数,它可以具有任意数量的参数,但只能有一个表达式。

匿名函数不需要使用 def 关键字定义完整函数。

lambda 函数通常用于编写简单的、单行的函数,通常在需要函数作为参数传递的情况下使用,例如在 map()、filter()、reduce() 等函数中。

lambda 函数特点:

lambda 函数是匿名的,它们没有函数名称,只能通过赋值给变量或作为参数传递给其他函数来使用。
lambda 函数通常只包含一行代码,这使得它们适用于编写简单的函数。
lambda 语法格式:

lambda arguments: expression
ex:

x = lambda a : a+10
print(x(5)) #输出15

我们可以将匿名函数封装在一个函数内,这样可以使用同样的代码来创建多个匿名函数。

以下实例将匿名函数封装在 myfunc 函数中,通过传入不同的参数来创建不同的匿名函数:

def myfunc(n):
return lambda a : a * n

mydoubler = myfunc(2)
mytripler = myfunc(3)

print(mydoubler(11)) #输出22
print(mytripler(11)) #输出33

posted on 2024-01-16 17:26  甜豆莎的辣白菜  阅读(88)  评论(0)    收藏  举报