python_day4内置函数补充

之前内容回顾


1、python基础

2、基本数据类型:str、dict、list、tuple、set..

s = "alex" => str # s是创建的一个对象,所有功能被保存在其对应的str的类里

对象是类的实例

isinstance(s, str) ==> True

3、函数式编程

函数定义

内置函数

文件处理

注意:

li = [11,22,33,44]

def f1(arg):     #此函数没有返回值,默认返回None

arg.append(55)

li = f1(li)      # li被重新赋值了,而其返回值为None

print(li)# 如果li没有被重新赋值,则li == [11,22,33,44,55]

4、其他

三目运算

lambda表达式

内置函数补充

callable()    # 查询是否可以被调用

chr() # 将数字转换成对应的ascii码

ord() # 将ascii码转换成数字

abs() # 取绝对值

bool()  # 取布尔值

# 0, None, "", [], {}, ()

# 以上布尔类型值都是False(注意双引号里面没有空格,列表跟字典里面无所谓)

bin()   #十进制转二进制

oct()   #十进制转八进制

hex()   #十进制转十六进制

utf-8 一个汉字:三个字节

gbk 一个汉字:两个字节

# 字符串转换成字节类型

# bytes("要转换的字符串",encoding="某种编码格式")

python file.py

执行文件过程:

1、读取文件内容open,string(字符串形式)到内存

2、python,把字符串 -> 编译 =》特殊代码

3、执行代码

>>> s = "print(123)"#字符串

>>> r = compile(s, "<string>", "exec")#将字符串编译成python代码

#有几种模式single, eval ,exec

>>> print(r)                 #code

<code object <module> at 0x0000018F219D2660, file "<string>", line 1>

>>> exec(r)        #执行

123

>>>

#将字符串编译成python代码

compile()

#执行python代码,接收:代码(直接执行)或者字符串(先编译再执行);虽然很牛逼,但没有返回值

exec("7+8+9")

#执行表达式,并且获取结果(有返回值)

ret = eval("7+8+9")

print(ret)

dir(list)    #快速查看对象提供了哪些功能

help(dir)    #帮助读源码的

#共97条数据,每页显示10条,需要多少页

r = divmod(97, 10)

print(r)      # (9, 7) 商9余7

# r[0] == 9 && r[1] == 7

#可以这么写:

n1, n2 = divmod(97, 10)

s = "alex"#用于判断,对象是某个类的实例

isinstance(s, str) ==> True


ret = filter(函数, 可迭代的对象)

# filter内部会循环被迭代的对象,然后执行函数,符合条件的元素就被添加到ret中

# 函数返回值为True,将元素添加到结果中!!!

>>> a = [11,22,33,44]

>>> ret = filter(lambda x:x>33, a)

>>> print(ret)

<filter object at 0x000001CE9A862518>

>>> print(list(ret))

[44]

ret2 = map(函数,可迭代的对象)

# map将函数的返回值添加到结果中!!!

>>> a = [11,22,33,44]

>>> ret2 = map(lambda x:x>11, a)#lambda返回值为bool类型

>>> print(list(ret2))

[False, True, True, True]

>>> ret2 = map(lambda x:x+11, a)#lambda返回值为int类型

>>> print(list(ret2))

[22, 33, 44, 55]

>>>

len()在python2.7跟python3.0里面的不同:

>>> li = "理解"        #python3里面,中文默认是字符来算的

>>> len(li)

2

>>> b = bytes(li, encoding=‘utf-8‘)    #可以显式的转换成字节

>>> len(b)

6

>>>

sum([11,22,33,44])

max([11,22,33,44])

min([11,22,33,44])

pow(2, 10)#乘方 =》1024

round(1.2)#四舍五入

li = [11,22,3,4]

li.reverse() 《===》reversed(li) #内部执行li.reverse()方法

li.sort() 《===》 sorted(li)


zip():  #仅限于python3..

>>> l1 = ["Your", 11, 22]

>>> l2 = ["are", 22, 33, 55]

>>> l3 = ["beautiful", 33, 44]

>>> r = zip(l1, l2, l3)

>>> print(list(r)) #依次取出每个数组的元素进行组合;如果元素长度不一致会被砍到一样长

[(‘Your‘, ‘are‘, ‘beautiful‘), (11, 22, 33), (22, 33, 44)]

>>> print(list(r)) #为啥第二此打印会变成空列表??

[]

>>> a, b, c = zip(*[(‘Your‘, ‘are‘, ‘beautiful‘), (11, 22, 33), (22, 33, 44)])

>>> print(a, b, c) # zip(*list)也就是列表前面带个星号,是上述操作的逆操作

(‘Your‘, 11, 22) (‘are‘, 22, 33) (‘beautiful‘, 33, 44)

>>>

反射:(以后补充)

delattr(), getattr(), setattr(), hasattr()

迭代器:

iter(), next()

时间: 2024-09-29 02:18:24

python_day4内置函数补充的相关文章

Day4 内置函数补充、装饰器

li = [11,22,33,44]def f1(arg): arg.append(55)#函数默认返回值None,函数参数传递的是引用li = f1(li) print(li) 内置函数补充: 判断是否被调用 def f1(): pass print(callable(f1)) ASCII码与数字转换 #数字转换为ASCII码r = chr(65)print(r)#ASCII转换为数字n = ord('a')print(n) 随机验证码 import randomlist_temp =[]fo

Python基础----内置函数补充、匿名函数、递归函数

内置函数补充 python divmod()函数:把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a // b, a % b) 语法: 1 divmod(a, b) #a.b为数字,a为除数,b为被除数 示例: 1 >>> divmod(7, 2) 2 (3, 1) #3为商,1为余数 3 >>> divmod(7, 2.5) 4 (2.0, 2.0) 应用:web前端页数计算 1 total_count=73 2 per_count=23 3 res=div

内置函数补充,__str__方法、__del__方法 和 __call__方法和元祖

一 .内置函数补充 1.isinstance函数: isinstance(obj,cls)检查obj是否是类 cls 的对象 使用该函数来判断一个函数的类型 2. issubclass(sub, super)检查sub类是否是 super 类的派生类 class Foo(object): pass class Bar(Foo): pass issubclass(Bar, Foo) 3.下述四个函数是专门用来操作类与对象属性的,如何操作? 通过字符串来操作类与对象的属性,这种操作称为反射 clas

python3全栈开发-内置函数补充,反射,元类,__str__,__del__,exec,type,__call__方法

一.内置函数补充 1.isinstance(obj,cls)检查是否obj是否是类 cls 的对象 class Foo(object): pass obj = Foo() print(isinstance(obj, Foo)) #结果为True 2.issubclass(sub, super)检查sub类是否是 super 类的派生类 class Foo(object): pass class Bar(Foo): pass print(issubclass(Bar, Foo)) #结果为True

Python菜鸟之路一:Python基础-内置函数补充

常用内置函数及用法: 1. callable() def callable(i_e_, some_kind_of_function): # real signature unknown; restored from __doc__ """检查对象object是否可调用.如果返回True,object仍然可能调用失败:但如果返回False,调用对象ojbect绝对不会成功 Return whether the object is callable (i.e., some kin

learn_Day14 内置函数补充、反射、初识面向对象

内置函数 __import__()用于导入模块 getattr 用于寻找模块的指定对象 a = __import__('b')  # b为模块名,b是字符串 ==>> 导入模块b并重新命名为a c = getattr(a,'d')  # d为模块中指定对象 ==>> 找到模块中命名为d的对象 d() ==>> 执行d # getattr(a,'b', c) # 从a模块中导入b.c参数可不写表示找不到报错:c为None表示找不到不报错,返回None. # hasattr

常用内置函数补充

常用内置函数: 1.calladle()是验证一个对象可不可以被调用. 2.chr() 是通过数字在ask码里找到指定字符. 3.ord()通过字符找到它在ask码里对应的数字 4.import random 随机生成数字的模块,想要随机生成数字时调用(应用场景随机验证码) 5.random.randrange(65,91)也就是我们生成的数字大于65小于91. 6.compile()将字符串编译成python代码 k=compile(i,"<string>","

python 内置函数补充

内置函数 callable(object) callable()函数用于测试对象是否可调用,如果可以则返回True(真):否则返回False(假) 1 def a1(): 2 pass 3 a1() 4 5 6 a2 = 123 7 print(callable(a1)) 8 print(callable(a2)) 9 10 #输出结果 11 True #a1可调用 12 False #a2不可调用 chr(i) chr()函数返回ASCII码对应的字符串 1 a1 = chr(65) 2 pr

内置函数补充 之 反射

getattr 反射 为什么要有反射? 当在设计一个页面访问的时候,通过用户输入相应的url,进入相应的页面,在用户输入的url地址不存在的时候,返回404错误. def run(): inp = input('请输入要访问的url:') if inp == 'login': commons.login() elif inp == 'logout': commons.logout() elif inp == 'home': commons.home() else: print('404') ru