Python初学者必须掌握的25个内置函数详解

目录
  • input()
  • print()
  • set()
  • str()
  • chr(i)
  • ord()
  • bool()
  • int()
  • bin()
  • oct()
  • hex()
  • abs()
  • divmod()
  • round()
  • pow(x, y[, z])
  • sum(iterable)
  • min(x, y, z, …)
  • list()
  • tuple()
  • dict()
  • len()
  • reversed()
  • enumerate()
  • filter(func, iterable)
  • 总结

input()

作用:让用户从控制台输入一串字符,按下回车后结束输入,并返回字符串

注意:很多初学者以为它可以返回数字,其实是错的!

>>> line = input("输入一个数字:")
输入一个数字:1
>>> line
'1'  # <-- 看清楚了,这个不是数字,只是字符串

# 如果你直接进行加法……
>>> line + 1
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: can only concatenate str (not "int") to str

# 正确方法,先把 line 转换成数字
>>> int(line) + 1
2

print()

作用:把参数转换成字符串后,输出到控制台

>>> print("hello", "world")
hello world
# 很多人不知道参数之间还可以插入其他字符
>>> print("hello", "world", sep="~")
hello~world
# 甚至可以让每个参数霸占一行
>>> print("hello", "world", sep="\n")
hello
world

set()

作用:构造集合。一个常用的方法是,把列表传入 set(),再转成列表,来实现列表的排重。

>>> set([1, 2, 3, 3])
{1, 2, 3}
# 这样就实现了排重
>>> list(set([1, 2, 3, 3]))
[1, 2, 3]

str()

作用:将对象转换成字符串。常用于字符串和数字的拼接。

例如,这样会报错:

>>> 'My Score is: ' + 100
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: can only concatenate str (not "int") to str

所以要用 str 转换一下:

>>> 'My Score is: ' + str(100)
'My Score is: 100'

chr(i)

作用:返回整数 i 所对应的字符,常用于生成字母表。

>>> chr(20013)
'中'
>>> chr(97)
'a'
# 与 ord() 配合,生成字母表
>>> [chr(ord('a') + i) for i in range(26)]
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']

ord()

作用:返回字符在编码表中对应的十进制数值

>>> ord('中')
20013
>>> ord('a')
97
# 与 chr() 配合,生成字母表
>>> [chr(ord('a') + i) for i in range(26)]
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']

bool()

作用: 判断一个对象的布尔值,返回 True 或 False

bool(1) => True
bool(0) => False
bool([]) => False

说明: 这个函数在实际项目中很少用,只是作为测试工具,让初学者能了解各对象的布尔状态。

int()

作用: 将任意进制的字符串转化为整数。

int('2') => 2
int('1010', 2) => 10  # 2进制1010转化为整数10

说明: 传入第2个参数,可指定参数1的进制类型。

bin()

作用: 把整数转换成2进制的字符串

bin(2) => '0b10'
bin(10) => '0b1010'

说明: 为啥字符串前面都有个 0b ?因为这是标准的写法,以 0b 开头表示接下来数字的是2进制。

oct()

作用: 将10进制转换为8进制的字符串

oct(7) => '0o7'
oct(8) => '0o10'

hex()

作用:将10进制转换为16进制的字符串

>>> hex(11)
'0xb'
>>> hex(16)
'0x10'

abs()

作用:取绝对值

>>> abs(-1)
1

divmod()

作用:同时返回除法运算中的商和余数,相当于一次运算,同时得到 a//b 和 a% b 的结果。

>>> divmod(1, 2)
(0, 1)
>>> divmod(4, 3)
(1, 1)

round()

作用:对一个浮点数进行四舍五入

>>> round(1.3333)
1
>>> round(1.3333, 2)  # 2 表示保留2位小数
1.33

pow(x, y[, z])

作用:如果只填 x 和 y 参数,则返回 x 的 y 次方。如果填了 z 参数,则再取模,相当于 pow(x, y) % z。

>>> pow(10, 2)
100
# 相当于
>>> 10**2
100
>>> pow(10, 2, 3)
1
# 相当于
>>> 10**2 % 3
1

sum(iterable)

作用:对数组 iterable 的所有元素进行求和。

>>> sum([1, 2, 3])
6

min(x, y, z, …)

作用:返回所有参数中的最小数

>>> min(1, 2, 3)
1
# 传入数组也可以
>>> min([1, 2, 3])
1

max(x, y, z, …)

作用:类似 min(),返回所有参数中的最大数

list()

作用:传入参数为空时,创建列表;传入参数不为空时,将参数转换成列表

>>> list()
[]
# 不为空时
>>> list('hello world')
['h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd']
# 传入字典试试
>>> list({'a': 1, 'b': 2})
['a', 'b']

tuple()

作用:跟 list 几乎一模一样,只不过 list 返回的是数组,tuple 返回的是元组。

dict()

作用:构造字典

# 方法1:
>>> dict(a=1, b=2)
{'a': 1, 'b': 2}
# 方法2:
>>> dict(zip(['a', 'b'], [1, 2]))
{'a': 1, 'b': 2}
# 方法3:
>>> dict([('a', 1), ('b', 2)])
{'a': 1, 'b': 2}

len()

作用:返回对象长度,或元素个数

>>> len([1, 2])
2
>>> len({'a': 1, 'b': 2})
2
>>> len('hello')
5

reversed()

作用:反转列表。

注意:返回的不是列表,是个迭代器。

>>> reversed([1, 2, 3])
<list_reverseiterator object at 0x1016190a0>
# 需要转换成 list
>>> list(reversed([1, 2, 3]))
[3, 2, 1]
# 字符串也一样
>>> reversed('abc')
<reversed object at 0x1015ffd90>
>>> list(reversed('abc'))
['c', 'b', 'a']

enumerate()

作用:用于遍历对象,正常的遍历,比如 for el in array ,只能拿到元素,不能拿到下标,用 enumerate() 就可以。

>>> for i, el in enumerate('abc'):
...     print(i, el)
...
0 a
1 b
2 c

这个下标怎么用呢?比如可以用来反过来修改数组内的元素:

>>> alphabet = ['a', 'b', 'c']
>>> for i, el in enumerate(alphabet):
...     alphabet[i] = el.upper()
...
>>> alphabet
['A', 'B', 'C']

filter(func, iterable)

作用:过滤并返回符合条件的元素

注意:返回的是一个迭代器。

>>> alphabet = ['a', 'b', 'c', 'E', 'F', 'G']
>>> filter(lambda e: e.isupper(), alphabet)
<filter object at 0x1016190a0>
>>> list(filter(lambda e: e.isupper(), alphabet))
['E', 'F', 'G']

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注我们的更多内容!

(0)

相关推荐

  • Python列表排序 list.sort方法和内置函数sorted用法

    很多时候我们获取到一个列表后,这个列表并不满足我们的需求,我们需要的是一个有特殊顺序的列表. 这时候就可以使用list.sort方法和内置函数sorted,本文就是介绍list.sort方法和sorted内置函数的使用方法和区别. 一.list.sort方法 list.sort方法会就地排序列表,也就是说不会把原列表复制一份.这也是这个方法的返回值是None的原因,提醒您本方法不会新建一个列表. 在这种情况下返回None其实是Python的一个惯例:如果一个函数或者方法对对象进行的是就地改动,那

  • Python函数的作用域及内置函数详解

    目录 1.函数的作用域 2.函数的调用详解 3.内置函数 总结 1.函数的作用域 -- 内置 -- 全局,顶格写 -- 局部,函数内部 a = 34 #全局变量 def run(): b = 44 #局部变量 print(a) print(b) #不可以直接调用局部变量,报错 运行结果: c = 12 def run(a): print(a) b = 33 run(5) # 一个全局变量c # 两个局部变量a,b # 函数的参数也是局部变量 运行结果: 5 局部 VS 全局 -- 局部空间(函数

  • python中str内置函数用法总结

    大家在使用python的过程中,应该在敲代码的时候经常遇到str内置函数,为了防止大家搞混,本文整理归纳了str内置函数.1字符串查找类:find.index:2.字符串判断类:islower.isalpha:3.内容判断类:tartswith.endswith:4.操作类函数:format.strip.join. 1.字符串查找类:find.index find和index均是查找字符串中是否包含一个子串: 二者的区别是index找不到字符串会报错,而find会返回-1: rfind.lfin

  • Python 内置函数速查表一览

    如下所示: 函数 功能 abs(x) 返回一个数的绝对值. 参数可以是一个整数或浮点数. 如果参数是一个复数,则返回它的模. all(iterable) 如果 iterable 的所有元素为真(或迭代器为空),返回 True any(iterable) 如果 iterable 的任一元素为真则返回 True. 如果迭代器为空,返回 False ascii(object) 返回一个表示对象的字符串 bin(x) 将一个整数转变为一个前缀为"0b"的二进制字符串 bool([x]) 返回一

  • Python内置函数zip map filter的使用详解

    并行遍历zip zip会取得一个或多个序理为参数,然后返回元组的列表,将这些序列中的并排的元素配成对. L1=[1,2,3,4] L2=[5,6,7,8] L3=zip(L1,L2) print(L3,type(L3)) <zip object at 0x7feb81b17f08> <class 'zip'> zip在python3中是一个可迭代对象,我们可以将其包含在list调用中以例一次性显示所有结果 list(L3) [(1, 5), (2, 6), (3, 7), (4,

  • 10个使用Python必须知道的内置函数

    目录 1. reduce() 2. split() 3. enumerate() 4. map() 5. getattr() 6. slice 7. sorted() 8. format 9. join() 10. type 1. reduce() reduce() 是 functools 模块下面的一个函数,接收两个参数,一个是函数对象,一个是可迭代对象(比如list), reduce每次会把迭代对象中的下一个元素作用在函数上做累积计算,最后得到一个值. 来看个例子你就明白,创建函数 : #

  • python内置函数之slice案例详解

    英文文档: class slice(stop) class slice(start, stop[, step]) Return a slice object representing the set of indices specified by range(start, stop, step). The start and step arguments default to None. Slice objects have read-only data attributes start, st

  • Python面向对象之内置函数相关知识总结

    Python内置函数 1. classmethod.staticmethod.property . 上述三个内置函数在文章(Python进阶--面向对象之成员)的方法和属性中已经详细介绍使用,可以返回浏览,具体地址: 2. callable,是否可在后面加括号执行. 函数 def func(): pass print( callable(func) ) # True 类 class Foo(object): pass print( callable(Foo) ) # True 类中具有__cal

  • Python初学者必须掌握的25个内置函数详解

    目录 input() print() set() str() chr(i) ord() bool() int() bin() oct() hex() abs() divmod() round() pow(x, y[, z]) sum(iterable) min(x, y, z, -) list() tuple() dict() len() reversed() enumerate() filter(func, iterable) 总结 input() 作用:让用户从控制台输入一串字符,按下回车后

  • 对python中的for循环和range内置函数详解

    如下所示: 1.for循环和range内置函数配合使用 range函数生成一个从零开始的列表, range(4)表示list:0123 range(1,11,2)表示从1开始到11-1为止步长为2的list:13579 即range(i)表示从0开始到i-1的列表,range(m,n)表示从m开始到n-1的列表,range(m,n,t)表示从m开始步长为t到n-1的列表 ''' print('第一次循环输出:') for i in range(4): print(i) print('第二次循环输

  • Python中号称神仙的六个内置函数详解

    目录 Lambda 函数 Map 函数 Reduce函数 enumerate 函数 Zip 函数 Filter 函数 人生苦短,菜鸟学Python! 今天,我们会一次性分享6个堪称神仙的内置函数.在很多计算机书籍中,它们也通常作为高阶函数来介绍.而我自己在日常工作中,经常使用它们来使代码更快,更易于理解. Lambda 函数 Lambda函数用于创建匿名函数,即没有名称的函数.它只是一个表达式,函数体比def简单很多.当我们需要创建一个函数来执行单个操作并且可以在一行中编写时,就可以用到匿名函数

  • Python中函数的基本定义与调用及内置函数详解

    前言 函数function是python编程核心内容之一,也是比较重要的一块.首先我们要了解Python函数的基本定义: 函数是什么? 函数是可以实现一些特定功能的小方法或是小程序.在Python中有很多内建函数,当然随着学习的深入,你也可以学会创建对自己有用的函数.简单的理解下函数的概念,就是你编写了一些语句,为了方便使用这些语句,把这些语句组合在一起,给它起一个名字.使用的时候只要调用这个名字,就可以实现语句组的功能了. 语法如下: # 定义方式 : def functionname([pa

  • Python中非常好用的内置函数详解

    目录 Counter 举例 实战 sorted all F-strings 总结 Python中冷门但非常好用的内置函数 Counter举例 实战sortedallF-strings Python中有许多内置函数,不像print.len那么广为人知,但它们的功能却异常强大,用好了可以大大提高代码效率,同时提升代码的简洁度,增强可阅读性 Counter collections在python官方文档中的解释是High-performance container datatypes,直接的中文翻译解释

  • Python中10个常用的内置函数详解

    目录 complex() dir() divmod(a,b) enumerate(iterable,start=0) eval(expression,globals,locals) filter(function,iterable) isinstance(object,classinfo) map(function,iterable,-) input() zip(*iteables) 总结 complex() 返回一个形如 a+bj 的复数,传入参数分为三种情况: 参数为空时,返回0j 参数为字

  • 浅析python中5个带key的内置函数

    目录 1.max取最大值函数 2.min取最小值函数 3.filter过滤函数 实例1 实例2 4.map序列映射函数 实例1 实例2 5.sorted序列排序函数 (1) cmp参数 (2)key参数 (3)reverse参数 1.max取最大值函数 max() 方法返回给定参数的最大值,参数可以为序列. lis = [1,2,3,-4] print(max(lis)) #返回lis列表中的最大值 '''结果: 3 ''' print(max(lis,key=abs)) #key参数指向绝对值

  • Kotlin 内联函数详解及实例

    Kotlin 内联函数详解及实例 概述 在说内联函数之前,先说说函数的调用过程. 调用某个函数实际上将程序执行顺序转移到该函数所存放在内存中某个地址,将函数的程序内容执行完后,再返回到转去执行该函数前的地方.这种转移操作要求在转去前要保护现场并记忆执行的地址,转回后先要恢复现场,并按原来保存地址继续执行.也就是通常说的压栈和出栈.因此,函数调用要有一定的时间和空间方面的开销.那么对于那些函数体代码不是很大,又频繁调用的函数来说,这个时间和空间的消耗会很大. 那怎么解决这个性能消耗问题呢,这个时候

  • C++ inline内联函数详解

    函数是一个可以重复使用的代码块,CPU 会一条一条地挨着执行其中的代码.CPU 在执行主调函数代码时如果遇到了被调函数,主调函数就会暂停,CPU 转而执行被调函数的代码:被调函数执行完毕后再返回到主调函数,主调函数根据刚才的状态继续往下执行. 一个 C/C++ 程序的执行过程可以认为是多个函数之间的相互调用过程,它们形成了一个或简单或复杂的调用链条,这个链条的起点是 main(),终点也是 main().当 main() 调用完了所有的函数,它会返回一个值(例如return 0;)来结束自己的生

随机推荐