tests
Posted dabenniao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tests相关的知识,希望对你有一定的参考价值。
常见的类型
列表
- list.count(data) data出现的次数
- list.sort([reverse=False]) 升序排序
- list.reverse() 翻转
- list.index() 返回data第一次出现的索引
- 删除操作
- del list[index] 删除指定索引的数据
- del remove[data] 删除第一个出现的指定数据
- list.pop() 删除末尾数据,并返回
- list.pop(index) 删除指定索引的数据,并返回
- 插入操作
- list.insert(index, data) 在指定位置插入数据
- list.append(data) 在末尾追加数据
- list.extentd(list2) 将列表2的数据追加到列表1
更多方法
ipython3 中 输入列表数据,按下tab键,可智能提示
关键字:
import keyword
print(keyword.kwlist)元祖
- info.count
- info.index
- 列表元祖相互转换
- list(tuple)
tuple(list)
字典
- dict.keys() 所有key列表
- dict.values() 所有value列表
- 取值
- dict[key] key不存在会报错
- dict.get(key) key不存在不报错
- 删除
- del dict[key] key不存在会报错
- dict.pop(key) 删除指定键值对, key不存在会报错 并返回值
- dict.popitem() 随机删除一个键值对,并返回元祖
- dict.clear() 清空字典
- 新增
- dict[key] = value 如果key存在修改,不存在则创建
- dict.setdefault(key, value) 如果Key存在,不修改数据,如果key不存在,则创建
dict.update(dict2) 将字典2的数据合并到字典1
字符串
- 判断类型
- string.ispace() 都是空格,返回True
- string.isalnum() 至少含有一个字符,并且所有的字符都是字符或数字,返回True
- string.isalpha() 至少有一个字符,并且所有字符都是字母,返回True
- byte类型数字会报错
- string.isdecimal() 只包含全角,unicode数字,返回True
- string.isdigit() 只包含unicode数字,byte数字(单字节),全角数字(双字节),返回True
- string.isnumeric() 只包含unicode数字,全角数字,罗马数字,汉子数字,返回True
- byte类型数字会报错
- string.istitle() 是标题化,返回True
- string.islower() 至少包含一个区分大小写的字符,并且这些字符都是小写,返回True
- string.isupper() ...都是大写,返回True
- 查找和替换
- string.startswith(str) 检查字符串是否以str开头
- string.endswith(str) 检查字符串是否以str结尾
- string.find(str, start=0, end=len(string)) 检查str是否包含在string中,是返回索引值,否返回-1
- string.rfing(str,...) 从右开始查找
- string.index(str,...) 值不存在会报错
- string.rindex(str,...) 从右边找
- string.replace(old_str,new_str,num=string.count(old)) 把string中的old_str替换成new_str,替换不超过num次
- 大小写转换
- string.capitalize() 把字符串的第一个字符大写
- string.title() 把字符串的每个单词首字母大写
- string.lower() 转换string中所有大写为小写
- string.upper() ...大写
- string.swapcase() 翻转大小写
- 文本对齐
- string.ljust(width) 返回一个左对齐,并用空格填充至长度为width的新字符串
- string.rjust(width)
- string.center(width)
- 取出空白字符
- string.lstrip() 去掉string左边的空白字符
- string.rstrip()
- string.strip()
- 拆分和连接
- string.partition(str) 把字符串分成一个3元素的元祖
- string.rpartition(str) 从右查找分割
- string.split(str="", num) 以str分割字符串,仅分割num次
- string.splitlines() 按照 , , 分割,返回各行
- string.join(seq) 以string为分割符,将seq中所有的元素合并一个新的字符串
- 切片---顾头不顾尾
- 截取末尾2个字符str[-2]
倒序截取str[::-1]
集合
- set(list) 集合列表转换
- set1 & set2 交集
- set1 | set2 并集
- set1 ^ set2 对称交集
set1 - set2 差集
内置函数
- len(item)
- del(item)
- max(item)
- min(item)
- map
map(lambda x, y: x+y, [1,2,3],[4,5,6])
- filter
filter(lambda x: x%2, [1,2,3,4])
- sorted
- dir()
类
常见的方法
- __str__
- __repr__
如果类中没有__str__方法,会掉用__repr__方法 - __call__
- __len__
- __hash__
- __eq__
__getattribute__() 属性拦截器
class A(object): def __getattribute__(self, item): if item == 'num': return '禁止访问' else: return object.__getattribute__(self, item)
### 常见的坑 class A(object): def __getattribute__(self, item): if item.startswith('a'): return 'a' else: # 千万不要返回属性,否则会无线重复调用 return self.test def test(self): print('in test')
类常见属性
- cls.__dict__ 查看类的属性
- cls.__dict__ 查看类的帮助文档
- cls.__name__ 查看类的名字
- cls.__base__ 查看类的第一个父类
- cls.__bases__ 查看类的父类构成的元祖
- cls.__module__ 查看类定义所在的模块
实例对象.__class__ 查看实例所对应的类
常见的模块
标准库 | 说明 |
---|---|
builtine | 内建函数默认加载 |
os | 操作系统接口 |
sys | Python解释器 |
functools | 常用工具 |
json | 编码和解码JSON对象 |
loggin | 记录日志,调试 |
threading | 多线程 |
copy | 拷贝 |
time | 时间 |
datatime | 日期和时间 |
calendar | 日历 |
re | 正则 |
socket | 标准的BSD Socket API |
shutil | 文件和目录管理 |
glob | 基于文件通配符搜索 |
扩展库 | 说明 |
---|---|
requests | 爬虫常用模块 |
scrapy | 爬虫 |
beautifulsoup4 | html/XML的解析器 |
celery | 分布式任务调度模块 |
redis | 缓存 |
Pillow(PIL) | 图形处理 |
xlsxwriter | 仅写excle功能,支持xlsx |
xlwt | 仅写excle功能,支持xls,2013或更早版的office |
xlrd | 仅读excle功能 |
elasticsearch | 全文搜索引擎 |
pymysql | 数据库连接库 |
mongoengine/pymongo | mongodbpython接口 |
matplotlib | 画图 |
numpy/scipy | 科学计算 |
django/tornado/flask | web框架 |
xmltodict | xml转dict |
SimpleHTTPServer | 简单的HTTPServer,不适用web框架 |
gevent | 基于协成的Python网络库 |
fabric | 系统管理 |
pandas | 数据处理库 |
scikit-learn | 机器学习库 |
functools
可用dir()来查看有哪些方法
partial 把一个函数的某些参数设置为默认值,然后返回这个函数
def test(a): print(a) t = functools.partial(a=0) t() #out: 0 t(1) #out: 1
wraps
def wrapper(func): @functools.wraps(func) def inner(*args, **kwargs): """in inner""" print('---start---') return func() return inner def test(): """in test""" print("test") print(test.__doc__) ### 会打印test的文档说明,而非Inner的
hashlib
运算符
- //整除
- list+list 合并字符串,列表,元祖
- list*4 重复字符串,列表,元祖
以上是关于tests的主要内容,如果未能解决你的问题,请参考以下文章