一文搞懂python的内建函数,自己添加一个print函数

简介: 写python的同学应该都用过print函数,这个函数我们没有定义为什么可以调用?

写python的同学应该都用过print函数,这个函数我们没有定义为什么可以调用?


答案就是因为 print 是内建函数,python的内建函数式都是常用的工具函数,也是系统内置的函数,今天就说下内建函数,结合例子看下,废话不多说,开始


1、什么是内建函数?


python内建函数指的是python自带的函数,这种函数不需要定义,并且不同的内建函数具有不同的功能,可以直接使用。


#!/usr/bin/python2.6
# -*- coding: utf-8 -*-
import builtins
def test():
    print("dsada")
if __name__ == '__main__':
    #   增加内建函数
    builtins.__dict__["testFunc"] = test
    testFunc()
    pass
复制代码


2、内置的内建函数多有哪些?


官方的文档说明链接:docs.python.org/3.9/library…


这里我截图了函数,可以做一个概览,看名字也能猜出这些函数都是做什么的

3c2b3cd2f2e4417e8c7f35965a228fdf~tplv-k3u1fbpfcp-zoom-in-crop-mark_1304_0_0_0.webp.jpg

对上面的函数进行分组:


数学类:sum(),pow(),sum(),round()


随机类:choice(),random(),seed(),shuffle(),uniform()


数字类:abs(),min(),max(),divmod(),ascii()


系统类:xxxattr,xxxmethod,


数据类型:set(),map(),tuple(),list(),bool(),int(),str(),


综合类:其他的可以归于此类


3、特殊函数说明

3.1 exec


格式:exec obj


obj对象可以是字符串(如单一语句、语句块),文件对象,也可以是已经由compile预编译过的代码对象。

举个例子


exec( "print('香菜')")
复制代码


3.2 eval


格式:eval( obj[, globals=globals(), locals=locals()] )


obj可以是字符串对象或者已经由compile编译过的代码对象。globals和locals是可选的,分别代表了全局和局部名称空间中的对象,其中globals必须是字典,而locals是任意的映射对象。


x = 3
print(eval('3*x'))
复制代码


输出结果是9 ,eval 可以引用上下文

3.3 compile


格式:compile( str, file, type )


compile语句是从type类型(包括’eval’: 配合eval使用,’single’: 配合单一语句的exec使用,’exec’: 配合多语句的exec使用)中将str里面的语句创建成代码对象。file是代码存放的地方,通常为”。


compile语句的目的是提供一次性的字节码编译,就不用在以后的每次调用中重新进行编译了。


compile()函数将string编译为代码对象,编译生成的代码对象接下来被exec语句执行,接着能利用eval()函数对其进行求值。filename参数应是代码从其中读出的文件名。如果内部生成文件名,filename参数值应是相应的标识符。kind参数指定string参数中所含代码的类别


3.4 globals和locals


globals()会以字典类型返回当前位置的全部全局变量。


locals()以字典类型返回当前位置的全部局部变量。


对于函数, 方法, lambda 函式, 类, 以及实现了 call 方法的类实例, 它都返回 True。


4、自己增加一个内置函数


在开发过程有些函数经常调用,但是每次都要导包什么的还挺麻烦的,就想着能不能把某几个工具函数加入到内建函数,只要有问题,其他人就会有同样的问题,其实解决的办法很简单,就是在builtins 中dict中添加函数就可以了,下面是个例子:


#!/usr/bin/env python
# encoding: utf-8
"""
#Author: 香菜
@time: 2021/10/10 0010 下午 10:22
"""
import builtins
def test():
    print("dsada")
if __name__ == '__main__':
    #   增加内建函数
    builtins.__dict__["testFunc"] = test
    testFunc()
    pass
复制代码


5、总结


python的内置函数并没有什么特殊的,只不过是系统提供的一些工具方法,实现也都很简单,记住这些常用的工具方法,在开发中一定可以事半功倍,

目录
相关文章
|
2月前
|
PHP Python
Python format()函数高级字符串格式化详解
在 Python 中,字符串格式化是一个重要的主题,format() 函数作为一种灵活且强大的字符串格式化方法,被广泛应用。format() 函数不仅能实现基本的插入变量,还支持更多高级的格式化功能,包括数字格式、对齐、填充、日期时间格式、嵌套字段等。 今天我们将深入解析 format() 函数的高级用法,帮助你在实际编程中更高效地处理字符串格式化。
174 0
|
2月前
|
索引 Python 容器
[oeasy]python096_列表_计数函数_count
本教程详细介绍了Python中列表的计数方法`count`,包括其基本用法、与`len`函数的区别,以及如何结合索引操作查找和删除特定元素。同时探讨了字符串对象的`count`方法,并通过实例演示了如何统计字符出现次数。
45 7
|
1月前
|
数据采集 索引 Python
Python Slice函数使用教程 - 详解与示例 | Python切片操作指南
Python中的`slice()`函数用于创建切片对象,以便对序列(如列表、字符串、元组)进行高效切片操作。它支持指定起始索引、结束索引和步长,提升代码可读性和灵活性。
|
2月前
|
机器学习/深度学习 数据处理 索引
Python内置函数:面试通关的49个秘密武器
本文精选49个Python高频面试内置函数,涵盖数值处理、类型转换、序列操作、字典集合、函数式编程及高级特性,结合真实代码案例解析底层逻辑与应用场景,助你提升开发效率,轻松应对技术面试。
53 0
|
3月前
|
API Python
Python 的内建函数
Python 的内置函数列表,方便查询使用方法。
|
3月前
|
数据采集 自然语言处理 搜索推荐
Python内置函数ord()详解
`ord()` 是 Python 中用于将单个字符转换为对应 Unicode 码点的核心函数,支持 ASCII、多语言字符及特殊符号。其返回值为整数(范围 0-1114111),适用于字符编码验证、数据清洗、自定义排序、基础加解密等场景。使用时需注意参数长度必须为 1,否则会触发 `TypeError`。结合 `chr()` 函数可实现双向转换,进阶技巧包括多字节字符处理、编码范围检测及字符分类验证等。
|
5月前
|
开发框架 Java .NET
Python中main函数:代码结构的基石
在Python中,`main`函数是程序结构化和模块化的重要组成部分。它实现了脚本执行与模块导入的分离,避免全局作用域污染并提升代码复用性。其核心作用包括:标准化程序入口、保障模块复用及支持测试驱动开发(TDD)。根据项目复杂度,`main`函数有基础版、函数封装版、参数解析版和类封装版四种典型写法。 与其他语言相比,Python的`main`机制更灵活,支持同一文件作为脚本运行或模块导入。进阶技巧涵盖多文件项目管理、命令行参数处理、环境变量配置及日志集成等。此外,还需注意常见错误如全局变量污染和循环导入,并通过延迟加载、多进程支持和类型提示优化性能。
350 0
|
算法 Python 容器
Python编程 - 不调用相关choose库函数,“众数“挑选器、随机挑选器 的源码编程实现
Python编程 - 不调用相关choose库函数,“众数“挑选器、随机挑选器 的源码编程实现
196 0
|
12月前
|
算法 Python
Python编程的函数—内置函数
Python编程的函数—内置函数
89 0
|
算法 Python
Python编程实验四:函数的使用
Python编程实验四:函数的使用
204 0

热门文章

最新文章

推荐镜像

更多