Python小白必备的8个最常用的内置函数(推荐)

yipeiwu_com6年前Python基础

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

print()

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

print(*objects, sep=' ', end='', file=sys.stdout, flush=False)

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

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

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

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

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

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

isinstance()

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

isinstance(object, classinfo)

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

>>> isinstance(1, (int, str))True>>> isinstance("", (int, str))True>>> isinstance([], dict)False

range()

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

range([start,] stop [, step]) -> range object

start 可选参数,序列的起点,默认是0

stop 必选参数,序列的终点(不包含)

step 可选参数,序列的步长,默认是1,生成的元素规律是 r[i] = start + step*i

生成0~5的列表

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

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

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

>>> for i in range(3):...   print("hello python")...hello pythonhello pythonhello python

步长为2

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

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

enumerate()

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

enumerate(iterable, start=0)

例如:

>>> for index, value in enumerate("python"):...   print(index, value)...0 p1 y2 t3 h4 o5 n

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

>>> for index, value in enumerate("python", start=1):...   print(index, value)...1 p2 y3 t4 h5 o6 n

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

def my_enumerate(sequence, start=0):  n = start  for e in sequence:    yield n, e    n += 1
>>> for index, value in my_enumerate("python"):  print(index, value)0 p1 y2 t3 h4 o5 n

len

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

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

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

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

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

reversed()

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

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

open()

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

open(file, mode='r', encoding=None)

读操作

# 从当前路径打开文件 test.txt, 默认以读的方式

>>>f = open("test.txt")>>>f.read()...

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

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

写操作

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

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

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

sorted()

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

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

以上所述是小编给大家介绍的Python常用的内置函数详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

Numpy数组array和矩阵matrix转换方法

1、ndarray转换成matrix import numpy as np from numpy import random,mat r_arr=random.rand(4,4)...

基于Python实现迪杰斯特拉和弗洛伊德算法

图搜索之基于Python的迪杰斯特拉算法和弗洛伊德算法,供大家参考,具体内容如下 Djstela算法 #encoding=UTF-8 MAX=9 ''' Created on 20...

Python基础之getpass模块详细介绍

Python基础之getpass模块详细介绍

本文主要给大家介绍了关于Python中getpass模块的相关内容,分享出来供大家参考学习,话不多说了,来一起看看详细的介绍: getpass模块提供了平台无关的在命令行下输入密码的方法...

matplotlib命令与格式之tick坐标轴日期格式(设置日期主副刻度)

matplotlib命令与格式之tick坐标轴日期格式(设置日期主副刻度)

1.横坐标设置时间格式 import matplotlib.pyplot as plt import matplotlib.dates as mdates # 配置横坐标为日期格式...

Pytorch 保存模型生成图片方式

三通道数组转成彩色图片 img=np.array(img1) img=img.reshape(3,img1.shape[2],img1.shape[3])...