Python中的56个内置函数详解(四)
25、format()
描述:Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能。
基本语法是通过 {} 和 : 来代替以前的 % 。使用format()来格式化字符串时,使用在字符串中使用{}作为占位符,占位符的内容将引用format()中的参数进行替换。可以是位置参数、命名参数或者兼而有之。
format 函数可以接受不限个参数,位置可以不按顺序。
语法:format(value, format_spec)
参数:
案例:
# 位置参数'{}:您{}购买的{}到了!请下楼取快递。'.format('快递小哥','淘宝','快递')'快递小哥:您淘宝购买的快递到了!请下楼取快递。'
#给批量客户发短息n_list=['马云','马化腾','麻子','小红','李彦宏','二狗子']
for name in n_list:
print('{0}:您淘宝购买的快递到了!请下楼取快递!'
.format(name))马云:您淘宝购买的快递到了!请下楼取快递!
马化腾:您淘宝购买的快递到了!请下楼取快递!
麻子:您淘宝购买的快递到了!请下楼取快递!
小红:您淘宝购买的快递到了!请下楼取快递!
李彦宏:您淘宝购买的快递到了!请下楼取快递!
二狗子:您淘宝购买的快递到了!请下楼取快递!
#名字进行填充
for n in n_list:
print('{0}:您淘宝购买的快递到了!请下楼取快递!'.format(n.center(3,'*')))
*马云:您淘宝购买的快递到了!请下楼取快递!马化腾:您淘宝购买的快递到了!请下楼取快递!
*麻子:您淘宝购买的快递到了!请下楼取快递!
*小红:您淘宝购买的快递到了!请下楼取快递!
李彦宏:您淘宝购买的快递到了!请下楼取快递!
二狗子:您淘宝购买的快递到了!请下楼取快递!
'{0}, {1} and {2}'.format('gao','fu','shuai')'gao,
fu and shuai'x=3y=5'{0}+{1}={2}'.format(x,y,x+y)
# 命名参数'{name1}, {name2} and {name3}'.format(name1='gao', name2='fu', name3='shuai')'gao,
fu and shuai'
# 混合位置参数、命名参数'{name1}, {0} and {name3}'.format("shuai", name1='fu',
name3='gao')'fu, shuai and gao'
#for循环进行批量处理["vec_{0}".format(i)
for i in range(0,5)]['vec_0', 'vec_1', 'vec_2', 'vec_3', 'vec_4']['f_{}'
.format(r) for r in list('abcde')]['f_a', 'f_b', 'f_c', 'f_d',
26、frozenset()
描述:frozenset() 返回一个冻结的集合,冻结后集合不能再添加或删除任何元素。
语法:class frozenset([iterable])
参数:iterable -- 可迭代的对象,比如列表、字典、元组等等。
案例:
创建一个不可修改的集合。frozenset([1,1,3,2,3])frozenset({1, 2, 3})
27、getattr()
描述:获取对象的属性
语法:getattr(object, name[, default])
参数:
object -- 对象。
name -- 字符串,对象属性。
default -- 默认返回值,如果不提供该参数,在没有对应属性时,将触发 AttributeError。
案例:
class Age(object): age = 1 my_a = Age()getattr(my_a, 'age')# 获取属性 bar 值 1getattr(my_a, 'age1')'Age' object has no attribute 'age1'
28、gobals()
描述: 函数会以字典类型返回当前位置的全部全局变量。
语法:globals()
参数:无
案例:
a='runoob'print(globals()) # globals 函数返回一个全局变量的字典,包括所有导入的变量
29、hasattr()
描述:函数用于判断对象是否包含对应的属性。
语法:hasattr(object, name)
参数:
object -- 对象。
name -- 字符串,属性名。
案例:
class Coordinate: x = 10 y = -5 z = 0point1 = Coordinate() print(hasattr(point1, 'x'))
Trueprint(hasattr(point1, 'y'))
Trueprint(hasattr(point1, 'z'))
Trueprint(hasattr(point1, 'no'))
# 没有该属性False
30、hash()
描述:返回对象的哈希值
语法:hash(object)
参数:object -- 对象;
案例:
hash() 函数可以应用于数字、字符串和对象,不能直接应用于 list、set、dictionary在 hash() 对对象使用时,所得的结果不仅和对象的内容有关,还和对象的 id(),也就是内存地址有关。
class Test:
def __init__(self, i):
self.i = ifor i in range(10):
t = Test(1)
print(hash(t), id(t))
hash(point1)16294976hash('返回对象的哈希值')4919828709165481160hash()
函数的用途hash() 函数的对象字符不管有多长,返回的 hash 值都是固定长度的,
也用于校验程序在传输过程中是否被第三方(木马)修改,
如果程序(字符)在传输过程中被修改hash值即发生变化,
如果没有被修改,则 hash 值和原始的 hash 值吻合,
只要验证 hash 值是否匹配即可验证程序是否带木马(病毒)。
name1='正常程序代码'name2='正常程序代码带病毒' print(hash(name1))
# -3048480827538126659print(hash(name2)) # -9065726187242961328
31、help()
描述:返回对象的帮助文档
语法:help([object])
参数:object -- 对象
案例:
help('sys')# 查看 sys 模块的帮助help('str')
# 查看 str 数据类型的帮助a = [1,2,3]help(a)
# 查看列表 list 帮助信息 help(a.append)
# 显示list的append方法的帮助
32、id()
描述:id() 函数返回对象的唯一标识符,标识符是一个整数。CPython 中 id() 函数用于获取对象的内存地址。
语法:id([object])
参数:object -- 对象。
案例:
返回对象的内存地址a = 'runoob'id(a)260316720
Python中的56个内置函数详解(一)
Python中的56个内置函数详解(二)
Python中的56个内置函数详解(三)
Python中的56个内置函数详解(五)
Python中的56个内置函数详解(六)
Python中的56个内置函数详解(七)
以上是 Python中的56个内置函数详解(四) 的全部内容, 来源链接: utcz.com/z/529458.html