Python3 函数学习笔记02——内置函数(一)

print()—打印输出

print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)

objects 打印输出至 file 指定的文本流,以 sep 分隔并在末尾加上 endsependfileflush 必须以关键字参数的形式给出。

所有非关键字参数都会被转换为字符串,就像是执行了 str() 一样,并会被写入到流,以 sep 且在末尾加上 endsepend 都必须为字符串;它们也可以为 None,这意味着使用默认值。 如果没有给出 objects,则 print() 将只写入 end

file参数必须是一个具有 write(string) 方法的对象;如果参数不存在或为 None,则将使用 sys.stdout。 由于要打印的参数会被转换为文本字符串,因此 print() 不能用于二进制模式的文件对象。 对于这些对象,应改用 file.write(...)

输出是否缓存通常取决于 file,但如果 flush 关键字参数为 True,输出流会被强制刷新。

int()—返回整数

返回一个基于数字或字符串 x 构造的整数对象,或者在未给出参数时返回 0,即将 x 转换为整数。

bool()—返回布尔值

返回布尔值,True 或 False。x 用标准的真值测试过程进行转换。如果 x 为 False 或省略,则返回 False;否则返回 True。

float()—返回浮点数

返回从数字或字符串 x 生成的浮点数,即将 x 转换为浮点数。

complex()—返回复数

返回值为 real + imag*1j 的复数,或将字符串或数字转换为复数,即返回一个带有实部 re 和虚部 im 的复数,im 默认为0。

bin()—转换成二进制字符串

将整数转变为以“0b”前缀的二进制字符串。

print(bin(3))		# 0b11
print(bin(-10))		# -0b1010

# 二进制转化成十进制
 print(int(0b11))	# 3

若要控制是否显示前缀“0b”,可以采用以下两种方案:

print(format(14, '#b'), format(14, 'b'))		# 0b1110  1110
print(f'{14:#b}', f'{14:b}')					# 0b1110  1110

oct()—转换成八进制字符串

将一个整数转变为一个前缀为“0o”的八进制字符串。

print(oct(8))		# 0o10
print(oct(-56))		# -0o70

若要将整数转换为八进制字符串,并可选择是否带有“0o”前缀,可采用如下方法:

print('%#o' % 10, '%o' % 10)				# 0o12  12
print(format(10, '#o'), format(10, 'o'))	# 0o12  12
print(f'{10:#o}', f'{10:o}')				# 0o12  12

hex()—转换成小写十六进制字符串

将整数转换为以“0x”为前缀的小写十六进制字符串。

print(hex(255))		# 0xff
print(hex(-42))		# -0x2a

如果要将整数转换为大写或小写的十六进制字符串,并可选择有无“0x”前缀,则可以使用如下方法:

print('%#x' % 255, '%x' % 255, '%X' % 255)		# 0xff  ff  FF
print(format(255, '#x'), format(255, 'x'), format(255, 'X'))	# # 0xff  ff  FF
print(f'{255:#x}', f'{255:x}', f'{255:X}')		# 0xff  ff  FF

pow()—幂函数

pow(base, exp[, mod]),返回 base 的 exp 次幂;如果 mod 存在,则返回 base 的 exp 次幂对 mod 取余(比 pow(base, exp) % mod 更高效)。 两参数形式 pow(base, exp) 等价于乘方运算符: base**exp。

a = 10
b = 3
c = 6
print(pow(a, b))	# 1000
print(a ** b)		# 1000
print(pow(a, b, c))	# pow(a, b) % c => pow(10, 3) % 6 => 4

sum(), min(), max()

lst = [12,456,32,18,64,57]
# 最大值
print(max(lst))		# 456
# 最小值
print(min(lst))		# 12
# 求和
print(sum(lst))		# 639

list()—返回列表

将一个可迭代对象转换成列表。

print(list("咬定青山不放松,立根原在破岩中。"))
# ['咬', '定', '青', '山', '不', '放', '松', ',', '立', '根', '原', '在', '破', '岩', '中', '。']

slice()—返回slice对象(类似切片)

slice(start, stop[, step]) 返回一个 slice 对象,代表由 range(start, stop, step) 指定索引集的切片。 其中参数 start 和 step 的默认值为 None。切片对象具有只读数据属性 start 、stop 和 step,只是返回对应的参数值(或默认值)。

s = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
sli = slice(1,10, 2)
print(s[sli])		# BDFHJ
print(s[1:10:2])	# BDFHJ

format()—格式化

format(value[, format_spec]) 将 value 转换为“格式化后”的形式,格式由 format_spec 进行控制。format_spec 的解释方式取决于 value 参数的类型。

# b: 二进制, o: 八进制, x: 十六进制
print(format(18, 'b'))		# 10010
# 用“0”填充至8位数
print(format(18, '08b'))	# 00010010

ord(),chr()—Unicode编码位置与对应字符

ord(ch):对表示单个 Unicode 字符的字符串,返回代表它 Unicode 码点的整数,即返回该字符在unicode中的编码位置。
chr(i):返回 Unicode 码位为整数 i 的字符的字符串格式,即返回unicode中对应编码位置的字符。

print(ord('中'))  # 20013
print(chr(20013))  # 给出编码位置. 展示出文字

# 遍历编码位置为0—65535的Unicode字符
for i in range(65536):
    print(chr(i)+" ", end="")

enumerate()—返回枚举对象

enumerate(iterable, start=0) 返回一个枚举对象。iterable 必须是一个序列,或 iterator,或其他支持迭代的对象。 enumerate() 返回的迭代器的 __next__() 方法返回一个元组,里面包含一个计数值(从 start 开始,默认为 0)和通过迭代 iterable 获得的值。

seasons = ['Spring', 'Summer', 'Fall', 'Winter']
print(list(enumerate(seasons)))		# [(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]
print(list(enumerate(seasons, start=1)))	# [(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]


for index, item in enumerate(seasons):
    print(index, item)
# 上下两段代码等价↑↓
for i in range(len(seasons)):
    print(i, seasons[i])


# enumerate(iterable, start=0) 等价于:
def enumerate(sequence, start=0):
    n = start
    for elem in sequence:
        yield n, elem
        n += 1

all(),any()—布尔运算

all(iterable) 如果 iterable 的所有元素均为真值(或可迭代对象为空)则返回 True ,相当于运算符and
any(iterable) 如果 iterable 的任一元素为真值则返回 True,相当于运算符or。 如果可迭代对象为空,返回 False。

print(all([1, "123", '字符串']))			# True
print(all([1, "123", '字符串', 0]))		# False
print(any([0, "", False]))				# False
print(any([0, "", False, 1]))			# True

hash()—返回哈希值

hash(object) 返回该对象的哈希值(如果它有的话)。哈希值是整数。它们在字典查找元素时用来快速比较字典的键。相同大小的数字变量有相同的哈希值(即使它们类型不同,如 1 和 1.0)。
哈希值是唯一的,一旦数据发生变化,其哈希值也会发生变化。

id()—返回内存地址

id(object) 返回对象的“标识值”,或内存地址。该值是一个整数,在此对象的生命周期中保证是唯一且恒定的。两个生命期不重叠的对象可能具有相同的 id() 值。

help()—输出帮助文档

help([object]) 启动内置的帮助系统(此函数主要在交互式中使用,即命令行中使用)。
如果没有实参,解释器控制台里会启动交互式帮助系统。
如果实参是一个字符串,则在模块、函数、类、方法、关键字或文档主题中搜索该字符串,并在控制台上打印帮助信息。
如果实参是其他任意对象,则会生成该对象的帮助页。

print(help(str))

dir()—返回名称列表或有效属性列表

如果没有实参,则返回当前本地作用域中的名称列表。
如果有实参,它会尝试返回该对象的有效属性列表。

print(dir('字符串'))  
''' 
['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', 
'__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', 
'__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', 
'__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', 
'__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', 
'__str__', '__subclasshook__', 'capitalize', 'casefold', 'center', 'count', 'encode', 
'endswith', 'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum', 
'isalpha', 'isascii', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 
'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 
'maketrans', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 
'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 
'upper', 'zfill']
'''
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值