Python部分内置函数

时间:2021-06-28 21:03:27   收藏:0   阅读:0

Python部分内置函数

class bytearray([source[, encoding[, errors]]])

返回一个新的 bytes 数组。 bytearray 类是一个可变序列,包含范围为 0 <= x < 256 的整数。它有可变序列大部分常见的方法
可选形参 source 可以用不同的方式来初始化数组:
	1. 如果是一个 string,您必须提供 encoding;bytearray() 会使用 str.encode() 方法来将 string 转变成 bytes。
	2.如果是一个 integer,会初始化大小为该数字的数组,并使用 null 字节填充。
	3.如果是一个 iterable 可迭代对象,它的元素的范围必须是 0 <= x < 256 的整数,它会被用作数组的初始内容。
	
#     返回一个新的 bytes 数组。 bytearray 类是一个可变序列,包含范围为 0 <= x < 256 的整数。
str_byay = bytearray("This is a bytearray",encoding="utf-8")
print(list(str_byay))  # # [84, 104, 105, 115, 32, 105, 115, 32, 97, 32, 98, 121, 116, 101, 97, 114, 114, 97, 121]
bt_byay = bytearray(list(str_byay))
print(bt_byay.capitalize())  # bytearray(b‘This is a bytearray‘)

delattr(object, name)
删除属性

获取对象属性
dir([object])

枚举
enumerate("iterable", start=0)

seasons = [‘Spring‘, ‘Summer‘, ‘Fall‘, ‘Winter‘]

list(enumerate(seasons))
[(0, ‘Spring‘), (1, ‘Summer‘), (2, ‘Fall‘), (3, ‘Winter‘)]

list(enumerate(seasons, start=1))

eval(expression[, globals[, locals]])
实参是一个字符串,以及可选的 globals 和 locals。globals 实参必须是一个字典。

a = 20
b = 30
ev = "{‘a‘:a, ‘b‘:b}"
ret_ev = eval(ev,{"a":a,"b":b})
print(ret_ev)  # {‘a‘: 20, ‘b‘: 30}
print(type(ret_ev))  # <class ‘dict‘>

map(function, iterable, ...)
返回一个将 function 应用于 iterable 中每一项并输出其结果的迭代器。
如果传入了额外的 iterable 参数,function 必须接受相同个数的实参并被应用于从所有可迭代对象中并行获取的项。
当有多个可迭代对象时,最短的可迭代对象耗尽则整个迭代就将结束。

ret_map = map(lambda x,y,z:x+y+z,list(range(5)),list(range(6)),list(range(6)))
* ret_map是一个迭代器
print(list(ret_map)) # [4, 5, 7, 9]

使用 locale.getpreferredencoding(False) 来获取本地编码
print(locale.getpreferredencoding(False)) # cp936

class property(fget=None, fset=None, fdel=None, doc=None)
fget 是获取属性值的函数。
fset 是用于设置属性值的函数。
fdel 是用于删除属性值的函数。
并且 doc 为属性对象创建文档字符串。

class TestProperty:
	def __init__(self):
		self._x = "Hello property"
	@property  # 使用装饰器来修饰
	def x(self):
		return self._x
	@x.setter
	def x(self, value):
		self._x = value
	@x.deleter
	def x(self):
		del self._x
	# 直接使用property函数
	# x = property(getx, setx, delx, "test property")
testPro = TestProperty()
testPro.x = 6
print(testPro.x) # 6
testPro.x = 10
print(testPro._x) # 10

setattr(object, name, value)
此函数与 getattr() 两相对应。 其参数为一个对象、一个字符串和一个任意值。
字符串指定一个现有属性或者新增属性。 函数会将值赋给该属性,只要对象允许这种操作

setattr(testPro,"_y","Hello _y")
print(testPro._y) # Hello _y

dict
print(testPro._ _ dict _ ) # 返回对象的可写属性
print(vars(testPro)) # 其实就是调用的object.
_ dict _ _

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!