题图:Photo by Markus Spiske on Unsplash

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

print()

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

print(*objects, sep=' ', end='\n', 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 python
hello python
hello 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 p
1 y
2 t
3 h
4 o
5 n

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

>>> for index, value in enumerate("python", start=1):
... print(index, value)
...
1 p
2 y
3 t
4 h
5 o
6 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 p
1 y
2 t
3 h
4 o
5 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)

读操作

#Python学习群592539176
# 从当前路径打开文件 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]

8个最常用的Python内置函数,小白必备!的更多相关文章

  1. 人生苦短之我用Python篇(深浅拷贝、常用模块、内置函数)

    深浅拷贝 有时候,尤其是当你在处理可变对象时,你可能想要复制一个对象,然后对其做出一些改变而不希望影响原来的对象.这就是Python的copy所发挥作用的地方. 定义了当对你的类的实例调用copy.c ...

  2. python内置函数

    python内置函数 官方文档:点击 在这里我只列举一些常见的内置函数用法 1.abs()[求数字的绝对值] >>> abs(-13) 13 2.all() 判断所有集合元素都为真的 ...

  3. python 内置函数和函数装饰器

    python内置函数 1.数学相关 abs(x) 取x绝对值 divmode(x,y) 取x除以y的商和余数,常用做分页,返回商和余数组成一个元组 pow(x,y[,z]) 取x的y次方 ,等同于x ...

  4. python内置函数大全(分类)

    python内置函数大全 python内建函数 最近一直在看python的document,打算在基础方面重点看一下python的keyword.Build-in Function.Build-in ...

  5. Python学习:6.python内置函数

    Python内置函数 python内置函数,是随着python解释器运行而创建的函数,不需要重新定义,可以直接调用,那python的内置函数有哪些呢,接下来我们就了解一下python的内置函数,这些内 ...

  6. 【Python】Python内置函数dir详解

    1.命令介绍 最近学习并使用了一个python的内置函数dir,首先help一下: 复制代码代码如下: >>> help(dir)Help on built-in function ...

  7. Python补充--Python内置函数清单

    Python内置函数 Python内置(built-in)函数随着python解释器的运行而创建.在Python的程序中,你可以随时调用这些函数,不需要定义.最常见的内置函数是: print(&quo ...

  8. Python入门之 Python内置函数

    Python入门之 Python内置函数 函数就是以功能为导向,一个函数封装一个功能,那么Python将一些常用的功能(比如len)给我们封装成了一个一个的函数,供我们使用,他们不仅效率高(底层都是用 ...

  9. python之Python内置函数一览表

    Python 解释器自带的函数叫做内置函数,这些函数可以直接使用,不需要导入某个模块. 如果你熟悉 Shell 编程,了解什么是 Shell 内置命令,那么你也很容易理解什么是 Python 内置函数 ...

随机推荐

  1. 第三周之Hadoop学习(三)

    从上周的这篇教程中继续hadoop的安装过程:http://dblab.xmu.edu.cn/blog/install-hadoop-in-centos/ 上节课安装到对hadoop中的输出的文件夹的 ...

  2. SpringBoot与Jpa自定义增删查改

    一.引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...

  3. 复盘实战营一期毕业典礼----HHR计划----以太入门课--第一课

    你要永远记住,实事求是. 我好像没能力给大家分享什么.分享点我的专业知识吧.我是做推荐+增长的,在一家D轮 DAU快千万的创业公司做增长优化负责人.一路优化,我把人均时长提高了30多分钟(现在人均时长 ...

  4. Java基础知识笔记第八章:常用的实体类

    String类 String类位于lang包下 java会默认导入lang包下的类,所以可以直接使用,注意String是final类所以不能有子类 构造String对象: 常量对象:String常量也 ...

  5. day5-1继承

    继承: Constructor属性和prototype属性的关系: 创建了自定义的构造函数之后,其原型对象默认会取得constructor属性:当调用构造函数创建一个新实例后,该实例的内部将包含一个指 ...

  6. 3 JavaScript正则表达式

    正则表达式:Regular(有规则的) Expression 正则表达式是由一个字符序列形成的搜索模式,可用于文本搜索和文本替换 常见于字符串的search和replace方法 var str = & ...

  7. 强制设置双缓冲DoubleBuffered 解决tableLayoutPanel 闪烁

    tableLayoutPanel.GetType().GetProperty("DoubleBuffered", System.Reflection.BindingFlags.In ...

  8. JavaScript动画实例:李萨如曲线

    在“JavaScript图形实例:阿基米德螺线”和“JavaScript图形实例:曲线方程”中,我们学习了利用曲线的方程绘制曲线的方法.如果想看看曲线是怎样绘制出来的,怎么办呢?编写简单的动画,就可以 ...

  9. Abstract Data Type

  10. linux的切换目录操作

    cd 是 change directory 用法 cd [目录名] 几个特殊目录: ”.“或者”./“当前目录        ”..“或者"../"上级目录        “../ ...