Python常见工厂函数用法示例
- 编程
- 2023-02-10
工厂函数:能够产生类实例的内建函数。
工厂函数是指这些内建函数都是类对象, 当调用它们时,实际上是创建了一个类实例。
Python中的工厂函数举例如下:
1. int(),long(),float(),complex(),bool()
>>> a=int(9.9) >>> a 9 >>> b=long(45) >>> b 45L >>> f=float(8) >>> f 8.0 >>> c=complex(8) >>> c (8+0j) >>> b1=bool(7.9) >>> b1 True >>> b2=bool(0.0) >>> b2 False >>> b3=bool([]) >>> b2 False >>> b4=bool((34,5)) >>> b4 True
2. str(),unicode()
>>> s=str(9.9) >>> s '9.9' >>> unicode(9.0) u'9.0' >>> unicode('love') u'love'
3. list(),tuple():生成列表或者元组
>>> l=list('python') >>> l ['p', 'y', 't', 'h', 'o', 'n'] >>> t=tuple('python') >>> t ('p', 'y', 't', 'h', 'o', 'n')
4. type():查看类型
>>> type(6) <type 'int'> >>> type('python') <type 'str'> >>> type(u'love') <type 'unicode'> >>> class A(): ... pass ... >>> a=A() >>> type(a) <type 'instance'> >>> type(A) <type 'classobj'>
5. dict():生成一个字典
>>> dict() {} >>> dict(one=1,two=2) {'two': 2, 'one': 1} >>> dict(zip(('one','two'),(1,2))) {'two': 2, 'one': 1} >>> dict([('one',1),('two',2)]) {'two': 2, 'one': 1} >>> dict([['one',1],['two',2]]) {'two': 2, 'one': 1} >>> dict((('one',1),('two',2))) {'two': 2, 'one': 1} >>> dict((['one',1],['two',2])) {'two': 2, 'one': 1}
6. set(): 生产可变集合
>>> s=set('python') >>> s set(['h', 'o', 'n', 'p', 't', 'y']) >>> s.add(825)#可变集合 >>> s set(['h', 'o', 'n', 'p', 't', 'y', 825])
7. frozenset():生成不可变集合
>>> s=frozenset('python') >>> s frozenset(['h', 'o', 'n', 'p', 't', 'y']) >>> s.add()#不可变集合 AttributeError: 'frozenset' object has no attribute 'add'
- 初学者学习python2还是python3?
- python获取本机IP、mac地址、计算机名
- 详解python2 和 python3的区别
- python基础之删除文件及删除目录的方法
- 用python求第1000个质数的值
- python常用函数年初大总结
- Python3 - 时间处理与定时任务
- Python开发的CMS系统,Silva CMS 3 发布
- python基础之使用os.system来执行系统命令
- 判断python字典中key是否存在的两种方法
- 初学者学习python2还是python3?
- python基础之删除文件及删除目录的方法
- python获取本机IP、mac地址、计算机名
- python获取系统时间(时间函数详解)
- 详解python2 和 python3的区别
- 用python求第1000个质数的值
- Python3 - 时间处理与定时任务
- 命令行看糗百
- Python算法之---冒泡,选择,插入排序算法
- python 中求和函数 sum详解
- range方法在Python2和Python3中的不同
- python3 数组(列表)初始化
- 记一次crontab中date命令错用导致的问题
- MySQL用LIKE特殊字符搜索
- CentOS 7 下修改主机名
- Python3正则表达式之:(?(id/name)y...
- TIOBE编程语言排行榜2019年 Python稳居前三
- 解压命令unzip常用方法汇总
- 解析redis备份文件rdb的两种方法及对比
- 百度视觉语义化平台2.0:交互升级和...
- 5G时代的视觉语义化技术:软硬结合...
- 百度AutoDL重磅升级至3.0:设计、迁...