前言

参考资料

  • 《Python编程:从入门到实战》;
  • MOOC慕课北理的嵩天教授的Python课程;

结合语法基础

本篇会实时更新,学到啥模块就更新啥模块的方法。重点放在常用函数、方法的总结,类似Java里API。主要起“字典”的作用,即忘了有啥方法才来查,因此做了些减法。结合Python语法基础来看可能效果会好一些;


1. 运算相关

x,y,z为某个数字;list为列表

  • abs(x):求x的绝对值;
  • divmod(x, y):商余,同时输出商和余数,divmod(10, 3) ---> (3, 1);
  • pow(x, y):幂运算,x**y;
  • pow(x, y, z):幂余,(x**y)%z;
  • round(x):四舍五入,不保留小数;
  • round(x, d):四舍五入,保留d位小数;
  • min(list):获取数字列表中的最小值;
  • max(list):获取数字列表中的最大值;
  • sum(list):获取数字列表中的总和;
  • int(x):将x取整,摄取小数部分;
  • float(x):将x变成浮点数,增加小数部分;
  • complex(x):将x变成复数,增加虚数部分;

2. Sring与数字

string为某个字符串;num为某个数字;firstNum为第一个数字;lastNum为最后一个数字;step为步长;u为unicode编码字符;old为老的子串;new为新的子串;sep为分隔的子串规则;fillchar为填充的字符;chars为字符;

字符串的操作方法

  • string.title():让每个单词的首字母都改成大写;
  • string.lower():字符串全字符小写;
  • string.upper():字符串全字符大写;
  • string.replace(old, new):所有old的子串被new子串替换;
  • string.center(num):根据宽度num将字符串居中;
  • string.center(num, fillchar):根据宽度num将字符串居中,其余字符使用fillchar填充;
  • string.rstrip():删去字符串末尾的空白;
  • string.lstrip():删去字符串开头的空白;
  • string.strip():同时删去字符串两端空白;
  • string.strip(chars):删去字符串两边出现的字符chars;
  • new.join(string):在string变量中除最后元素外每个元素后增加一个new子串;

字符串的获取功能

  • string.count('xxx'):获取xxx在string中出现的次数;
  • string.split():以空格为分隔符将字符串拆分成多个部分,并储存在一个列表里;
  • string.split(sep):返回列表,根据sep将字符串分隔;
  • len(string):获取字符串的长度;
  • chr(u):返回u编码的字符x;
  • ord(x):获取x的Unicode编码;

其他类型转字符串的方法

  • str(num):将数字num转换成字符串;
  • hex(num):将数字num转成十六进制字符串;
  • oct(num):将数字num转成八进制字符串;

字符串切片(同列表切片)

  • string[firstNum: lastNum: step]:根据步长对字符串切片;
  • string[::-1]:倒转字符串;

字符串的格式化

  • "{} {}".format("hello", "world"):不设置指定位置,按默认顺序输出 hello world;
  • "{1} {0} {1}".format("hello", "world"):设置指定位置,输出 world hello world;
  • format函数传入对象:
    class AssignValue(object):
    def __init__(self, value):
    self.value = value
    my_value = AssignValue(6)
    print('value 为: {0.value}'.format(my_value)) # "0" 是可选的

数字的格式化

  • {字符串模板}.format(用逗号分隔的字符串参数):使用字符串模板格式化字符串参数;
  • format格式化函数的字符串模板,如下图所示:

  • 数字格式化示例:

字符串反转函数

def rvs(s):
if s == "" :
return s
else :
return rvs(s[1:])+s[0]

3. 列表相关

list为某个列表;object为列表中的某个元素;index为列表的索引;firstNum为第一个数字;lastNum为最后一个数字;num为某个数字;

创建列表的示例

  • bicycles = [ 'trek', 'cannondale', 'redline']
  • list= []:创建空列表;

数字列表的创建与操作功能

  • range(firstNum, lastNum):生成一系列数字,包含firstNum,不包含lastNum。通常在遍历时使用,如for num in range(1, 5):
  • range(firstNum, lastNum, step):指定步长生成一系列数字,包含firstNum,不包含lastNum,步长为step;
  • list(range(firstNum, lastNum)):生成数字列表,包含firstNum,不包含lastNum;
  • list = [num**2 for num in range(1s, 11)]:使用列表解析生成数字列表;
  • min(list):获取数字列表中的最小值;
  • max(list):获取数字列表中的最大值;
  • sum(list):获取数字列表中的总和;

列表的增删功能

  • list.append(object):将object元素添加到列表末尾;
  • list.insert(index, object):将object元素添加到列表任意位置,需要指定索引index;
  • del list[index]:删除list列表里指定索引index的元素;
  • list.pop():弹出列表末尾元素;
  • list.pop(index):弹出列表中指定索引index的元素;
  • list.remove(object):将列表中元素object删除,只删除第一个指定的值;
  • list.clear():删除列表所有元素;

列表的操作功能

  • list.sort():根据首字母对列表进行排序,永久性修改;
  • list.sort(reverse = True):按字母顺序相反的顺序排列列表元素,永久性修改;
  • sorted(list):根据首字母对列表进行排序,临时性修改;
  • sorted(list, reverse=True):按字母顺序相反的顺序排列列表元素,临时性修改;
  • list.reverse():反转列表排列顺序;
  • tuple(list):将列表类型转变为元祖类型,实现数据保护;
  • list1[i: j: k] = list2:用列表list2替换list1切片后说对应元素子列表;
  • list *= n:将列表list重复n次,并更新;

列表的获取功能

  • len(list):获取list列表的长度;
  • list[firstNum: lastNum]:切片,获取索引为firstNum到lastNum-1的元素组成新列表(可用于遍历部分列表、复制列表);
  • list[: lastNum]:切片,获取从头开始到lastNum-1的元素组成新列表;
  • list[firstNum:]:切片,获取索引为firstNum到列表末尾的元素组成新列表(当first为负数时,为倒数几个);
  • list.copy():生成新列表,复制list中所有元素;

4. 集合相关

S、T为集合;x为集合中的元素

集合的操作符

  • S | T:并集,所有元素;
  • S - T:差集;
  • S & T:交集,同时包含;
  • S ^ T:补集,非相同元素;
  • S <= T 或 S < T:判断S和T的子集关系;
  • S >= T 或 S > T:判断S和T的包含关系;
  • S |= T:并集;
  • S -= T:差集;
  • S &= T:交集;
  • S ^= T:补集;

集合的处理方法

  • S.add(x):若S中无x,则将x加入S;
  • S.discard(x):移除元素x,若x不在S中,不报错;
  • S.remove(x):移除元素x,若x不在S中,产生KeyError异常;
  • S.clear():移除所有元素;
  • S.pop():随机返回一个元素,并更新S,若S为空则产生KeyError异常;
  • S.copy():返回集合S的一个副本;
  • len(S):返回集合S的元素个数;
  • x in S:判断x是否在S中;
  • x not in S:判断x是否不在S中;
  • set(x):将其他类型变量转变为集合类型;

5. 序列化类型

序列是一个基类类型,由字符串、元祖、列表构成。x为元素;S、T为序列;n为数字;i、j为索引;k为步长;

序列化通用操作符

  • x in S:判断x是否在S中;
  • x not in S:判断x是否不在S中;
  • S + T:连接两个序列;
  • S*n:将序列S复制n次;
  • S[i]:返回第i个元素;
  • S[i: j]:切片,含i不含j;
  • S[i: j: k]:切片,以k为步长,含i不含j;
  • len(S):返回序列S的长度,即元素个数;
  • min(S):返回序列中的最小值;
  • max(S):返回序列中的最大值;
  • S.index(x):返回序列S第一次出现x的位置;
  • S.index(x, i, j):返回序列S从i到j第一次出现x的位置;
  • S.count(x):返回序列S中出现x的总次数;

6. 字典相关

map为某个字典;key为键;value为值;

创建字典的示例

  • alien0 = {'color': 'green', 'points': 5}
  • map = {}:创建空字典;
  • 由类似对象组成字典,如下:
    favorite_languages = {
    'jen': 'python',
    'sarah': 'ruby',
    'edward': 'ruby',
    'phil': 'python',
    }

字典的获取功能

  • map[key]:根据key获取value,如果key为字符串需要用引号标识;
  • map.items():返回字典中所有键值对的信息。可用于用于map字典的遍历,如:for key, value in map.items():
  • map.keys():返回字典中所有键的信息。可用于遍历map字典的键,如:for object in map.keys():
  • map.values():返回字典中所有值的信息。可用于遍历map字典的值,如:for object in map.values():
  • set(map.values()):遍历map字典的值,剔除重复项;
  • map.get(key, <default>):若键存在,则返回相应值,不存在则返回<default>值;
  • map.pop(key, <default>):若键存在,则返回相应值,不存在则返回<default>值;
  • map.popitem():随机从字典map中取出一个键值对,以元祖形式返回;
  • len(map):获取map中的元素个数;

字典的操作功能

  • map[key] = value:给map字典新增一对键值对 / 或修改某键的值;
  • del map[key]:删除map字典中键]为key的键值对;
  • map.clear():删除所有的键值对;

字典的判断功能

  • key in map:判断键key是否在字典map中;

7. 输入输出

content作为变量储存用户输入;message为提示用户的信息,将打印在控制台;

  • content = input("mesage"):获取用户输入内容(在Python 2.7里使用raw_input()函数);
  • print(content):将content打印输出到控制台;

8. 文件相关

xxx.txt是一个txt文件;file_object为文件对象;

打开文件的示例

with open('xxx.txt') as file_object:
contents = file_object.read()
print(contents)
  • open('xxx.txt'):以只读方式打开文件,操作文件的前置工作。待操作文件需要与程序在同一目录下,或者使用相对路径 \ ;
  • open('xxx.txt', 'w'):以写入方式打开文件,不换行。其他参数还有r读取、a附加、r+读写;
  • close('xxx.txt'):关闭文件;
  • file_object.read():读取文件;
  • file_object.readlines():将文件各行存储在一个列表里;

9. json模块

content是要操作的内容;file_object是文件对象;json是模块名

  • json.dump(content, file_object):将content内容存入文件对象;
  • json.load(file_object):将文件对象里的内容加载;

10. unittest测试模块

self是Python的关键字,用于方法中;a为程序员编写方法的运行结果;b为该函数的预期结果;

  • unittest.TestCase:unittest模块里的测试类,所有测试类都要继承TestCase类;
  • unittest.main():让Python运行文件中的测试;
  • setUp(self):构建前置条件的方法,在一个测试类中只执行一次;

常用的断言方法

  • self.assertEqual(a, b):核实 a == b;
  • self.assertNotEqual(a, b):核实 a != b;
  • self.assertTrue(a):核实a为 True;
  • self.assertFalse(a):核实a为 False;
  • self.assertIn(item, list):核实item在list中;
  • self.assertNotIn(item, list):核实item不在list中;

11. time模块

formatStr为格式化控制符组成的字符串;timeStr为具有某种格式的时间字符串;second为数字,表示秒;

时间获取

  • time():获取当前时间戳,即计算机内部时间值,返回浮点数;
  • ctime():获取当前时间并以易读方式表示,返回字符串;
  • gmtime():获取当前时间,表示为计算机可处理的时间格式;

格式化控制符

格式化字符串 日期/时间说明 值范围
%Y 年份 0000~9999,如:2021
%m 月份 01~12,如:0
%B 月份名称 January~December,如:April
%b 月份名称缩写 Jan~Dec,如:Apr
%d 日期 01~31,如:21
%A 星期 Monday~Sunday,如:Wednesday
%a 星期缩写 Mon~Sun,如:Wed
%H 小时(24h制) 00~23,如:12
%l 小时(12h制) 01~12,如:7
%p 上/下午 AM,PM
%M 分钟 00~59
%S 00~59

时间格式化

  • strftime(formatStr, time.gmtime()):定义输出效果timeStr,将计算机可处理的时间以特定格式返回;
  • strptime(timeStr, formatStr):定义输入效果,将特定格式的时间转换成计算机可处理的时间格式;

程序计时

  • perf_counter():返回CPU级别的精确事件计数值,单位秒;
  • sleep(second):程序休眠second秒,可以是浮点数;

12. random模块

a、b为数字;k为数字,表示步长;seq表示序列

基本随机数函数

  • seed(a):初始化给定随机数种子,默认为当前系统时间。产生种子a对应的序列;
  • random():生成一个[0.0 , 1.0)之间的随机小数;

扩展随机数函数

  • randint(a, b):生成一个[a , b]之间的整数;
  • randrange(a, b):生成一个[a, b)之间的随机整数;
  • randrange(a, b, k):生成一个[a, b)之间以k为步长的随机整数;
  • getrandbits(a):生成一个a比特的随机整数;
  • uniform(a, b):生成一个[a, b]之间的随机小数;
  • choice(seq):从序列seq中堆积选择一个元素;
  • shuffle(seq):将序列seq中的元素随机排列,返回打乱后的序列;

13. jieba模块

jieba库是一个优秀的中文分词第三方库。string为一串中文字符串;

  • lcut(string):精确模式,返回一个列表类型的分词结果(中国, 是, 一个, 伟大, 的, 国家);
  • lcut(string, cut_all=True):全模式,返回一个列表类型的分词结果,存在冗余(中国, 国是, 一个, 伟大, 的, 国家);
  • lcut_for_search(string):搜索引擎模式,返回一个列表类型的分词结果,存在冗余(中华, 华人, 人民, 共和, 共和国, 中华人民共和国, 是, 伟大, 的);
  • add_word(string):向分词词典增加新词string;

最后

新人制作,如有错误,欢迎指出,感激不尽!
欢迎关注公众号,会分享一些更日常的东西!
如需转载,请标注出处!

Python | Python常用函数、方法示例总结(API)的更多相关文章

  1. oracle常用函数及示例

    学习oracle也有一段时间了,发现oracle中的函数好多,对于做后台的程序猿来说,大把大把的时间还要学习很多其他的新东西,再把这些函数也都记住是不太现实的,所以总结了一下oracle中的一些常用函 ...

  2. Python 数据类型,常用函数方法分类

    Python基本数据类型:(int) 字符串(str)列表(list)元组(tuple)字典(dict)布尔(bool) python中可以简单使用 类型(数据)创建或转换数据 例: #字符串转数字 ...

  3. Python 字符串常用函数

    操作字符串的常用函数 函数 描述(返回值) str.capitalize() 将字符串的第一个字符大写 str.title() 返回标题化的字符串,即每个单词的首字母都大写 str.upper() 全 ...

  4. python字符串常用的方法解析

    这是本人在学习python过程中总结的一些关于字符串的常用的方法. 文中引用了python3.5版本内置的帮助文档,大致进行翻译,并添加了几个小实验. isalnum S.isalnum() -> ...

  5. Python—字符串常用函数

    Python-字符串常用字符串 字符串是一种表示文本的数据类型,使用单引号和双引号及三引号表示 访问字符串中的值字符串的每个字符都对应一个下标,下标编号是从0开始 转义字符字符串的格式化输出切片常用函 ...

  6. python字符串 常用函数 格式化字符串 字符串替换 制表符 换行符 删除空白 国际货币格式

    # 字符串常用函数# 转大写print('bmw'.upper()) # BMW# 转小写print('BMW'.lower()) # bmw# 首字母大写print('how aae you ?'. ...

  7. selenium2.0关于python的常用函数

    转: 新建实例driver = webdriver.Chrome() 1.获取当前页面的Url函数 方法:current_url 实例: driver.current_url 2.获取元素坐标 方法: ...

  8. [转]SQL 常用函数及示例

    原文地址:http://www.cnblogs.com/canyangfeixue/archive/2013/07/21/3203588.html --SQL 基础-->常用函数 --===== ...

  9. SQL 常用函数及示例

    --SQL 基础-->常用函数 --================================== /* 一.函数的分类 SQL函数一般分为两种 单行函数 基于单行的处理,一行产生一个结果 ...

  10. python的常用魔法方法详细总结

    构造和初始化 __init__我们很熟悉了,它在对象初始化的时候调用,我们一般将它理解为"构造函数". 实际上, 当我们调用x = SomeClass()的时候调用,__init_ ...

随机推荐

  1. Oracle实时数据抽取项目问题总结

    Oracle实时数据抽取项目问题总结 项目背景介绍 项目主要是将Oracle.MySQL.SQLServer.Db2等其他数据库的实时变更数据同步到其他异构数据库中.本篇文章主要是讨论oracle的实 ...

  2. Apache Struts2 S2-013远程代码执行漏洞复现

    墨者学院开的靶场 进入环境 Struts2-013好家伙,框架直接写脸上,怕人看不出来= = 看了看源码什么的啥都没发现= = 去了解了一下这个漏洞,爬回来继续做 漏洞原理 struts2的标签中&l ...

  3. NOIP模拟73

    T1 小L的疑惑 解题思路 第一眼不是正解,又是 bitset 优化可以得到的 60pts 的部分分. 打着打着突然发现这个东西好像和之前做过的某个题有一些相似,试着打了一下. 然后样例过了,然后对拍 ...

  4. (Java)面向对象的三大特征

    封装.继承与多态 封装 封装的作用(好处) 提高程序安全性,保护数据 隐藏代码的实现细节 统一接口 增加系统可维护性 属性私有(关键字private) 加上Private可使该属性私有于一个类,在其他 ...

  5. PublishFolderCleaner 让你的 dotnet 应用发布文件夹更加整洁

    大家都知道,在 dotnet 发布时,将会在输出的 publish 文件夹包含所需的依赖.在 .NET Core 开始,引入了 AppHost 的概念,即使是单个程序集,也需要独立的 Exe 可执行文 ...

  6. flask操作(增删改查操作)

    增加数据 from .models import Goods from app.extensions import db goods1 = Goods(name='魅族18s', price=3400 ...

  7. C语言知识_1

    +,-,*,/是C语言中表示四则运算的符号.:用来分割不同的语句{}用来对语句进行分组 函数代表了一组数据处理过程,由一对大括号所包含的多条语句来表示这个处理过程.每个函数有唯一的名字,main函数是 ...

  8. 使用vuex简单的实现系统中的状态管理

    最近项目中用到了vue,其中状态的集中管理使用到了vuex,因此就学习vuex做一个简单的记录.vuex的官方网址如下: https://vuex.vuejs.org/zh-cn/  vuex 当我们 ...

  9. Noip模拟8 2021.6.17

    T1 星际旅行 仔细一看,发现像一个欧拉路(简称一笔画). 满足"可以一笔画"的条件是: 1.所有点都有偶数条连边; 2.有偶数个点连奇数条边; 满足以上两个条件的任意一个即可一笔 ...

  10. 硬件工程师必须掌握的PCB叠层设计内容

    总的来说叠层设计主要要遵从两个规矩: 1. 每个走线层都必须有一个邻近的参考层(电源或地层); 2. 邻近的主电源层和地层要保持最小间距,以提供较大的耦合电容; 下面列出从两层板到八层板的叠层来进行示 ...