Python小白必备的8个最常用的内置函数

开发 后端
Python给我们内置了大量功能函数,官方文档上列出了69个,有些是我们是平时开发中经常遇到的,也有一些函数很少被用到,这里列举被开发者使用最频繁的8个函数以及他们的详细用法。

 [[257457]]

Python给我们内置了大量功能函数,官方文档上列出了69个,有些是我们是平时开发中经常遇到的,也有一些函数很少被用到,这里列举被开发者使用最频繁的8个函数以及他们的详细用法

print()

print函数是你学Python接触到的***个函数,它将对象输出到标准输出流,可将任意多个对象打印出来,函数的具体定义: 

  1. print(*objects, sep=' 'end='\n'file=sys.stdout, flush=False

objects 是可变参数,所以你可以同时将任意多个对象打印出来 

  1. >>> print(1,2,3)  
  2. 1 2 3 

默认使用空格分隔每个对象,通过指定sep参数可以使用逗号分隔 

  1. >>> print(1,2,3, sep=',' 
  2. 1,2,3 

对象默认输出的是标准输出流,你也可以将内容保存到文件中 

  1. >>> print(1,2,3, sep=','file=open("hello.txt", "w")) 

isinstance()

可以用 isinstance 函数判断某个对象是否属于某个类的实例,函数的定义 

  1. isinstance(object, classinfo) 

classinfo 既可以是单个类型对象,也可以是由多个类型对象组成的元组,只要object的类型是元组中任意一个就返回True,否则返回False 

  1. >>> isinstance(1, (int, str))  
  2. True  
  3. >>> isinstance("", (int, str))  
  4. True  
  5. >>> isinstance([], dict)  
  6. False 

range()

range函数是个工厂方法,用于构造一个从[start, stop) (不包含stop)之间的连续的不可变的整数序列对象,这个序列功能上和列表非常类似,函数定义: 

  1. range([start,] stop [, step]) -> range object 
  •  start 可选参数,序列的起点,默认是0
  •  stop 必选参数,序列的终点(不包含)
  •  step 可选参数,序列的步长,默认是1,生成的元素规律是 r[i] = start + step*i

生成0~5的列表 

  1. >>>   
  2. >>> range(5)  
  3. range(0, 5)  
  4. >>>   
  5. >>> list(range(5))  
  6. [0, 1, 2, 3, 4]  
  7. >>> 

默认从0开始,生成0到4之间的5个整数,不包含5,step 默认是1,每次都是在前一次加1

如果你想将某个操作重复执行n遍,就可以使用for循环配置range函数实现 

  1. >>> for i in range(3):  
  2. ...     print("hello python")  
  3. ...  
  4. hello python  
  5. hello python  
  6. hello python 

步长为2 

  1. >>> range(1, 10, 2)  
  2. range(1, 10, 2)  
  3. >>> list(range(1, 10, 2))  
  4. [1, 3, 5, 7, 9] 

起点从1开始,终点10,步长为2,每次都在前一个元素的基础上加2,构成1到10之间的奇数。

enumerate()

用于枚举可迭代对象,同时还可以得到每次元素的下表索引值,函数定义: 

  1. enumerate(iterable, start=0

例如: 

  1. >>> for index, value in enumerate("python"):  
  2. ...     print(index, value)  
  3. ...  
  4. 0 p  
  5. 1 y  
  6. 2 t  
  7. 3 h  
  8. 4 o  
  9. 5 n 

index 默认从0开始,如果显式指定参数start,下标索引就从start开始 

  1. >>> for index, value in enumerate("python", start=1):  
  2. ...     print(index, value)  
  3. ...  
  4. 1 p  
  5. 2 y  
  6. 3 t  
  7. 4 h  
  8. 5 o  
  9. 6 n 

如果不使用enumerate函数,要获取元素的下标索引,则需要更多的代码: 

  1. def my_enumerate(sequence, start=0):  
  2.     n = start  
  3.     for e in sequence:  
  4.         yield n, e  
  5.         n += 1  
  1. >>> for index, value in my_enumerate("python"):  
  2.     print(index, value)  
  3. 0 p  
  4. 1 y  
  5. 2 t  
  6. 3 h  
  7. 4 o  
  8. 5 n 

len

len 用于获取容器对象中的元素个数,例如判断列表是否为空可以用 len 函数 

  1. >>> len([1,2,3])  
  2.  
  3. >>> len("python")  
  4.  
  5. >>> if len([]) == 0:  
  6.         pass 

并不是所有对象都支持len操作的,例如: 

  1. >>> len(True)  
  2. Traceback (most recent call last):  
  3.   File "<stdin>", line 1, in <module>  
  4. TypeError: object of type 'bool' has no len() 

除了序列对象和集合对象,自定义类必须实现了 __len__ 方法能作用在len函数上

reversed()

reversed() 反转序列对象,你可以将字符串进行反转,将列表进行反转,将元组反转 

  1. >>> list(reversed([1,2,3]))  
  2. [3, 2, 1] 

open()

open 函数用于构造文件对象,构建后可对其进行内容的读写操作 

  1. open(file, mode='r'encoding=None

读操作 

  1. # 从当前路径打开文件 test.txt, 默认以读的方式  
  2. >>>f = open("test.txt")  
  3. >>>f.read()  
  4. ... 

有时还需要指定编码格式,否则会遇到乱码 

  1. f = open("test.txt", encoding='utf8'

写操作 

  1. >>>f = open("hello.text", 'w', encoding='utf8' 
  2. >>>f.write("hello python")) 

文件中存在内容时原来的内容将别覆盖,如果不想被覆盖,直接将新的内容追加到文件末尾,可以使用 a 模式 

  1. f = open("hello.text", 'a', encoding='utf8' 
  2. f.write("!!!") 

sorted()

sroted 是对列表进行重新排序,当然其他可迭代对象都支持重新排放,返回一个新对象,原对象保持不变 

  1. >>> sorted([1,4,2,1,0])  
  2. [0, 1, 1, 2, 4] 

sorted 还有很多更高级的用法,可以参考我之前总结的一篇文章:史上最全关于sorted函数的10条总结 

责任编辑:庞桂玉 来源: Python之禅
相关推荐

2024-01-24 13:14:00

Python内置函数工具

2020-04-16 09:50:14

Python 开发效率

2020-06-24 07:44:12

Python数据技术

2020-03-31 14:00:29

Python 开发工具

2024-02-26 00:00:00

stage函数进度

2022-03-09 09:39:22

Python函数模块

2022-03-21 21:55:43

Python编程语言

2021-04-26 05:35:22

Python内置函数

2021-03-16 10:12:24

python内置函数

2010-03-22 10:27:28

Python常用模块I

2009-09-03 10:08:27

JavaScript自

2020-08-26 12:07:02

PythonGUI库开发

2023-12-22 15:44:43

2022-09-20 12:59:36

JavaScript函数

2010-09-14 17:27:27

SQL函数

2021-05-22 23:08:08

深度学习函数算法

2024-04-29 08:32:21

os.path模块Python内置函数

2018-06-21 15:17:15

机器学习

2020-09-23 22:40:31

Python 开发编程语言

2009-06-10 21:58:51

Javascript常
点赞
收藏

51CTO技术栈公众号