一、与作用域有关

1.locals()

当前作用域的值

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

2.globals()

全局作用域的值

print(locals())
print(globals())

二、与迭代器/生成器有关

1.next()

与双下方法__next__()一样,next(iterator/generator)

def generator():
    for i in range(10):
        yield i


g = generator()
print(next(g))     # g.__next__()

2.iter()

与__iter__()方法一样,可迭代对象->迭代器

from collections.abc import Iterator

li = list(range(10))
li = iter(li)       # li.__iter__()
ret = isinstance(li, Iterator)
print(ret)

3.range()

可以看成有序数字的list

三、其它

1.dir()

含参数,获取当前参数的属性、方法,无参数获取当前作用域的变量、方法等,注意:不包含内置命名空间的变量和方法

2.help()

help(内容),获取帮助文档,和Linux一样

3.callable()

callable(内容),判断是否可调用,返回值True,False

4.import

导入模块

5.open()

打开文件

6.与内存有关

1)hash(数据),查看是否可哈希,可哈希输出值,不可哈希报错

_hash = hash(123)   # 123可哈希
print(_hash)

_hash = hash([])    # list不可哈希
print(_hash)

2)id()

查看值(变量、函数)的内存地址

7.输入输出

1)input()

用户交互

2)print()

end:是默认参数,end = '\n'

for i in range(4):
    print(i, end=' ')   # 输出结果:0 1 2 3

sep:sep是默认参数,sep = ' '

print(1, 2, 3, 4, 5, sep='')   # 去除1,2,3,4,5之间的空格

file:file也是默认参数,file = 'None',终端的实质是文件

f = open(file='f_1', mode='w', encoding='utf-8')
print('Hello, World', file=f)       # 文件是f
f.close()

flush:flush是默认参数,flush = False,值为False时,一起打印;为True时,一个一个打印

# 简单的进度调
import time
for i in range(0, 101, 2):
    time.sleep(0.1)
    char_num = i//2
    ret = "\r%s%%:  %s\n" % (i, '*' * char_num)if i == 100 else '\r%s%%: %s' % (i, '*' * char_num)
    print(ret, end='', file=True)

8.执行字符串-不建议使用

1)eval(),有返回值,用于计算

s = '1+2+3+4'
ret = eval(s)
print(ret)

2)exec(),无返回值,用于流程控制

s = """
for i in range(5):
    print(i)
"""
exec(s)

3)compile()

编译给eval()和exec()使用,几乎不用

四、与数字相关

1.数据类型

1).bool

2).int

3).float

包含:有序小数,无限循环小数

4).complex

复数:实数+虚数(10j),几乎用不到

2.进制转化

1)bin()

十进制->二进制

2)oct()

十进制->八进制,不常用

3)hex()

十进制->十六进制

print(bin(10))      # 以0b开头
print(oct(10))      # 以0o
print(hex(10))      # 以0x

3.数学运算

1).abs()

求绝对值

2).divmod(a,b)

div(除) mod(模/余),除余,a//b 和 a%b

a = divmod(10, 3)
print(a)    # 输出结果:(3,1)

3).round(a,b)

求float的精度,float a,取小数点后b位

a = round(3.14159, 2)
print(a)    # 输出3.14

4).pow(a,b)

a的b次幂,a**b

a = pow(2, 5)
print(a)

power(a, b, c)

a**b%c

5).sum()

sum(iterable, start)

start从几开始,若不写则从0开始,若没有iterable,返回start

a = sum(list(range(5)))
print(a)
a = sum(list(range(5)), 10)     # start 不是关键字参数
print(a)

6).max()

求最大值,可以用iterable或*args

key = None为默认参数,key = func/函数名

print(max(1, 2, 3, 4))  # 4
print(max([1, 2, 3, 4]))    # 4
print(max(1, 2, 3, 4, -5))  # 4
print(max(1, 2, 3, 4, -5, key = abs))     # -5

7)min()

求最小值,用法和max()一样

print(min(1, 2, 3, 4))  # 1
print(min([1, 2, 3, 4]))    # 1
print(min(1, 2, 3, 4, -5))  # -5
print(min(1, 2, 3, 4, -5, key = abs))     # 1

 

 

 

 

  

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄