当前位置: 首页 > news >正文

汇总记录Python常用的基础内置方法

这里汇总记录一些Python常用的基础内置方法

(参照哔站有一个大佬"小飞有点东西"的笔记整理记录而得,仅限方便需要的时候可以直接在网上搜索查阅而整理记录)

输出/输入

print() 
input()

print打印颜色设置

'''
显示方式;前景颜色;背景颜色,这3个参数都为可选参数,选择自己需要的即可,而且顺序不是固定的,但建议按照默认顺序书写,结尾的\033[0m一定要有,不然会影响之后的打印。
注:也可以在input()的提示性输出中使用
'''
print('\033[显示方式;前景颜色;背景颜色m......\033[0m')
print("\033[33m输入有误,请重新输入!\033[0m") # 黄色字体
print("\033[31;43m输入有误,请重新输入!\033[0m") # 红字黄底

在这里插入图片描述

数据计算相关

abs() divmod() round() pow()sum() min()
max()

print(min(5,3,9,12,7,2)) #求最小值 >>>2
print(max(7,3,15,9,4,13)) #求最大值 >>>15
print(round(4.50)) # 四舍五入有 >>>4
print(round(4.51)) # 四舍五入有 >>>5
print(divmod(20,3)) # 返回商和余数 >>>(6,2)
print(abs(-2)) # 返回绝对值 >>>2
print(pow(10,2,3)) # 求10的2次幂>>>100 .如果有三个参数. 则求完次幂后对第三个数取余 >>>1print(sum([1,2,3,4,5,6,7,8,9,10])) # 求和 >>>55

转换/格式化

s = "hello world!"
print("我的第一课讲的是{},我很高兴".format(s))   #格式化输出 >>> 我的第一课讲的是hello world!,我很高兴
print(format(s, "^20")) #中对齐 >>> hello world!
print(format(s, "<20")) #左对齐 >>>hello world!
print(format(s, ">20")) #右对齐 >>> hello world!
# 右对齐,用横杠填满20个字符,并且加上前为分隔符
print('{:->20,}'.format(1424577211.789)) # >>>---1,424,577,211.789
print(format(3, 'b' )) # 把整型数字3转二进制>>>11
print(format(97, 'c' )) # 把整型数字97转换成unicode字符>>>a
print(format(11, 'd' )) # 把整型数字11转⼗进制>>>11
print(format(11, 'o' )) # 把整型数字11转八进制 >>>13
print(format(11, 'x' )) # 把整型数字11转十六进制(⼩写字母) >>>b
print(format(11, 'X' )) # 把整型数字11转十六进制(大写字母) >>>B
print(format(11, 'n' )) # 把整型数字11转⼗进制 >>>11
print(format(11)) # 把整型数字11转⼗进制 >>>11
print(format(123456789, 'e' )) # 科学计数法. 默认保留6位小数 >>>1.234568e+08print(format(123456789, '0.2e' )) # 科学计数法. 保留2位小数(小写) >>>1.23e+08
print(format(123456789, '0.2E' )) # 科学计数法. 保留2位小数(大写) >>>1.23E+08
print(format(1.23456789, 'f' )) # 小数点计数法. 保留6位小数 >>>1.234568
print(format(1.23456789, '0.2f' )) # 小数点计数法. 保留2位小数 >>>1.23
print(format(1.23456789, '0.10f')) # 小数点计数法. 保留10位小数 >>>1.2345678900
print(format(1.23456789e+3, 'F')) # 小数点计数法. 很大的时候输出INF >>>1234.567890print(repr(f"我是\n中国{3}人\t你呢")) # 保留引号,原样输出 >>>'我是\n中国3人\t你呢'

序列相关操作

print(len("hello world")) #>>>11
lst = [1, 2, 3, 4, 5, 6, 7]
print(lst[1:3:1]) #[2,3]
s = slice(1, 3, 1) # 切片用的
print(lst[s]) #[2,3]
lst = [5,7,6,12,1,13,9,18,5]
lst.sort() # sort是list里面的一个方法
print(lst) # >>>[1, 5, 5, 6, 7, 9, 12, 13, 18]
ll = sorted(lst) # 内置排序函数,默认升序,返回一个新列表
print(ll) # >>>[1, 5, 5, 6, 7, 9, 12, 13, 18]
l2 = sorted(lst,reverse=True) #降序
print(l2) # >>>[18, 13, 12, 9, 7, 6, 5, 5, 1]
#根据字符串长度给列表排序
lst = ['one', 'two', 'three', 'four', 'five', 'six']
l1 = sorted(lst, key=lambda s:len(s))
print(l1) # >>>['one', 'two', 'six', 'four', 'five', 'three']
lst = "你好啊"
it = reversed(lst) #将一个序列翻转,不会改变原值,返回翻转序列的迭代器
li = list(it)
print(li) # >>>['啊', '好', '你']
li.reverse() # list里面的reverse方法也有类似的效果
print(li) # >>>['你', '好', '啊']
# filter() # 用于过滤序列,过滤掉不符合条件的元素
it = filter(lambda n: n % 2 == 0, [1,11,55,6,5,73,84,99])
print(it)
# >>> <filter object at 0x000001DAFE19F848>
for x in it:
print(x)
>>>6
>>>84
print(all([1, 'hello', True, 0])) #可迭代对象中有一个为False,结果就是False,
>>>False
print(all([])) # 如果可迭代对象为空,返回True >>>True
print(any([0,False,1,'good'])) # 可迭代对象中有一个是True, 结果就是True >>>Trueprint(any([])) # 如果可迭代对象为空,返回Fasle >>>False
it = iter(["Python", "Linux", "go"]) # 用来生成迭代器
>>> <list_iterator object at 0x000001DAFE19F948>
next(it) # >>> Python 返回迭代器下一个元素
next(it) # >>> Linux 返回迭代器下一个元素
range(1,10) # 返回数字序列
# enumerate() 枚举
lst = ['one','two','three','four','five']
for index, item in enumerate(lst,1): # 把索引和元素一起获取,索引默认从0开始. 可以更改为1
print(index, item)
>>>1 one
>>>2 two
>>>3 three
>>>4 four
>>>5 five
# zip() 打包
"""
zip函数用于将可迭代的对象作为参数, 将对象中对应的元素打包成一个元组, 然后返回由这些元组组成的迭代器. 如果各个可迭代对象的元素长度不一致, 则返回迭代的长度与最短的可迭代相同
"""
lst1 = [1, 2, 3, 4, 5, 6]
lst2 = ['醉乡民谣', '驴得水', '放牛班的春天', '美丽人生', '辩护人', '被嫌弃的松子的一生']lst3 = ['美国', '中国', '法国', '意大利', '韩国', '日本']
print(zip(lst1, lst1, lst3)) # 返回一个迭代器
>>> <zip object at 0x00000256CA6C7A88>
for el in zip(lst1, lst2, lst3):
print(el)
>>>(1, '醉乡民谣', '美国')
>>>(2, '驴得水', '中国')
>>>(3, '放牛班的春天', '法国')
>>>(4, '美丽人生', '意大利')
>>>(5, '辩护人', '韩国')
>>>(6, '被嫌弃的松子的一生', '日本')
# map() 根据提供的函数对指定序列做映射。
map(lambda x: x ** 2, [1, 2, 3, 4, 5]) # 计算平方数
>>> [1, 4, 9, 16, 25]

进制与编码

print(bin(10)) # 将给的参数转换成二进制 >>>0b1010
print(oct(10)) # 将给的参数转换成八进制 >>>0o12
print(hex(10)) # 将给的参数转换成十六进制 >>>0xa
bs = bytes("我喜欢你", encoding="utf-8") # 把字符串转化成bytes类型
print(bs)
>>>b'\xe6\x88\x91\xe5\x96\x9c\xe6\xac\xa2\xe4\xbd\xa0'
bytearray() # 返回一个新字节数组. 这个数组的元素是可变的, 并且每个元素的值得范围是[0,256)
ret = bytearray("fei" ,encoding ='utf-8')
print(ret)
>>>bytearray(b'fei')
print(ret[0])
>>>102
ret[1]=102 #把102的位置f赋值给ret[1]
print(ret)
>>>bytearray(b'ffi')
print(ord('a')) # 字母a在编码表中的码位 >>>97
print(ord('飞')) # '飞'字在编码表中的位置 >>>39134
print(chr(65)) # 已知码位,求字符是什么 >>>A
print(chr(39134)) # >>>飞

类与对象相关

# super() 用于调用父类的方法
# property() 装饰器,用于把类方法转换为类属性
# classmethod() 装饰器,类绑定方法
# staticmethod() 装饰器,非绑定方法
#callable() # 判断一个对象是否可以加括号调用
def func():
pass
print(callable(func)) # >>>True
class Test():
pass
print(callable(Test)) # >>>True
# isinstance() # 判断一个对象,是否是某一个类的实例
print(isinstance('abc', str)) # >>>True
# issubclass() 判断一个类是否是另一个类的子类
class Human():
pass
class Chinese(Human):
name = "张大仙"
age = 73
res = issubclass(Chinese,Human)
#判断Chinese是否是Human的子类
print(res)
>>>True

其他

dir(obj) # 查看一个对象下可以点出来的所有属性
hasattr(obj, 'age') # 查看对象是否有age属性
getattr(obj, 'age') # 获取对象的age属性
setattr(obj, 'age'18) # 给对象的age属性设置值
delattr(obj, 'age') # 删除对象的age属性
# __import__() # 用字符串方式导入模块
time = __import__('time')
print(time.time())
# eval() # 执行字符串类型的代码(适用于表达式执行),并返回最终结果
res = eval('1+2+b', {'b': 3}, {'b': 4})
print(res)
>>>7
# exec() # 执行字符串类型的代码(适用于代码块执行),把产生的局部名称空间给y,没有返回值y = {}
res = exec('a=1+2+b', {'b': 3}, y)
print(res, y)
>>>None {'a': 6}
y = {'b': 4}
res = exec('a=1+2+b', {'b': 3}, y)
print(res, y)
>>>None {'b': 4, 'a': 7}id() # 在CPython中,用于获取对象的内存地址。
type() # 返回对象的类型
open() # 用户打开文件,创建一个 file 对象
hash() # 哈希加密,这个内置函数一般不用,都用hashlib模块
# globals() 以字典形式返回当前位置的全部全局变量
name = '张大仙'
print(globals())
>>>{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__':
<_frozen_importlib_external.SourceFileLoader object at 0x0000024F6E0C0888>,
'
__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins'
(built-in)>, '__file__': 'D:/teach/进阶篇/settings.py', '__cached__': None,
'
name
'
:
'
张大仙'}
#locals() 以字典形式返回当前位置的全部局部变量,如果直接在全局打印,结果会和globals()一样def func(n): # 两个局部变量:n、z
z = 1
print(locals())
func(2)
>>>{'n': 4, 'z': 1}
#vars() 返回对象所有属性(等同于__dict__)。如果不传参数,就打印当前调用位置所有属性,等同于locals()。
# 但和hasattr不一样,hasattr是看对象可以点出来哪些属性,包括对象类里面的属性,父类的属性,都是可以点出来的
class Human:
star = 'earth'
def __init__(self, name, age):
self.name = name
self.age = age
print(vars(Human))
>>>{'__module__': '__main__', 'star': 'earth', '__init__': <function
Human.__init__ at 0x000001321EFCDC18>, '__dict__': <attribute '__dict__' of
'Human' objects>, '__weakref__': <attribute '__weakref__' of 'Human' objects>,
'
__
doc__': None}
obj = Human('张大仙', 18)
print(vars(obj))
>>>{'name': '张大仙', 'age': 18}
# ascii() # 将所有非 ascii 字符替换为转义字符,返回的结果会保留引号,与repr类似
ascii('hello 你好')
>>>'hello \\u4f60\\u597d'
# frozenset() # 用set()定义的集合为可变集合。而它返回的是一个冻结的集合,该集合不能再添加或删除任何元素,相当于不可变集合。
s = frozenset('123')
print(s)
>>>frozenset({'2', '1', '3'})
# object() # 调用它会返回一个空对象,但一般都不会调用它,都是用它作为类的基类使用。
# memoryview() # 返回给定参数的内存视图对象,不用掌握
# complex() # 返回一个复数, 不用掌握
# compile() # 将一个字符串编译为字节代码,不用掌握

相关文章:

汇总记录Python常用的基础内置方法

这里汇总记录一些Python常用的基础内置方法 (参照哔站有一个大佬"小飞有点东西"的笔记整理记录而得&#xff0c;仅限方便需要的时候可以直接在网上搜索查阅而整理记录) 输出/输入 print() input()print打印颜色设置 显示方式;前景颜色;背景颜色&#xff0c;这3个…...

基于Tensorflow卷积神经网络玉米病害识别系统(UI界面)

欢迎大家点赞、收藏、关注、评论啦 &#xff0c;由于篇幅有限&#xff0c;只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 Tensorflow是一个流行的机器学习框架&#xff0c;可用于训练和部署各种人工智能模型。玉米病害识别系统基于Tensorf…...

Execution failed for task ‘:keyboard_utils:compileDebugKotlin‘.

Execution failed for task ‘:keyboard_utils:compileDebugKotlin’. 这个错误是keyboard_utils依赖报错。 这个问题在keyboard_utils github项目的issues 有记载Project does not run with new Flutter 2.10.0 详细错误信息&#xff1a; e: /Users/andreifufylev/developme…...

AC修炼计划(AtCoder Regular Contest 163)

传送门&#xff1a;AtCoder Regular Contest 163 - AtCoder 第一题我们只需要将字符串分成两段&#xff0c;如果存在前面一段比后面一段大就成立。 #include<bits/stdc.h> #define int long long using namespace std; typedef long long ll; typedef pair<int,int&g…...

持续进化,快速转录,Faster-Whisper对视频进行双语字幕转录实践(Python3.10)

Faster-Whisper是Whisper开源后的第三方进化版本&#xff0c;它对原始的 Whisper 模型结构进行了改进和优化。这包括减少模型的层数、减少参数量、简化模型结构等&#xff0c;从而减少了计算量和内存消耗&#xff0c;提高了推理速度&#xff0c;与此同时&#xff0c;Faster-Whi…...

【设计模式】第24节:行为型模式之“模板方法模式”

一、简介 模板方法模式在一个方法中定义一个算法骨架&#xff0c;并将某些步骤推迟到子类中实现。模板方法模式可以让子类在不改变算法整体结构的情况下&#xff0c;重新定义算法中的某些步骤。 模板模式有两大作用&#xff1a;复用和扩展。其中&#xff0c;复用指的是&#…...

【考研数学】数学“背诵手册”(二)| 线代及概率论部分

文章目录 引言二、线代施密特正交化分块矩阵转置、逆、伴随之间的运算关于秩定义性质 三、概统常见分布的期望及方差 引言 这数一全部内容太多了&#xff0c;放在一篇文章里的话&#xff0c;要编辑就很困难&#xff0c;就把线代和概率放在这篇文章里吧。 二、线代 施密特正交…...

Android WMS——WindowState介绍(十三)

前面文章中的 addWindow 方法,首先获取了 DisplayContent,紧接着判断窗口的 type 类型并标记。然后获取 token 信息,且该信息是通过 DisplayContent 中的方法获取的。最后就是创建并保存 WindowState 信息。 一、简介 在窗口管理系统(Window Manager Service,WMS)中,Wi…...

C/C++网络编程基础知识超详细讲解第二部分(系统性学习day12)

懒大王感谢大家的关注和三连支持~ 目录 前言 一、UDP编程 UDP特点&#xff1a; UDP框架: UDP函数学习 发送端代码案例如下&#xff1a; 二、多路复用 前提讲述 select poll 三、图解如下 总结 前言 作者简介&#xff1a; 懒大王敲代码&#xff0c;…...

【教3妹学编程-算法题】117. 填充每个节点的下一个右侧节点指针 II

2哥 : 3妹&#xff0c;听说你昨天去面试了&#xff0c;怎么样啊&#xff1f; 3妹&#xff1a;嗨&#xff0c;别提了&#xff0c;让我回去等通知&#xff0c;估计是没有通知了&#xff0c; 还浪费我请了一天假。 2哥 : 你又请假了啊&#xff0c; 你是怎么跟你那个严厉的老板请假…...

window10 mysql8.0 修改端口port不生效

mysql的默认端口是3306&#xff0c;我想修改成3307。 查了一下资料&#xff0c;基本上都是说先进入C:\Program Files\MySQL\MySQL Server 8.0这个目录。 看看有没有my.ini&#xff0c;没有就新建。 我这里没有&#xff0c;就新建一个&#xff0c;然后修改port&#xff1a; […...

欧盟网络安全威胁:虚假与错误信息

如今&#xff0c;数字平台已是新闻媒体的主战地。社交网站、新闻媒体、甚至搜索引擎都是现在大多数人的信息来源。由于这些网站的运作方式是通过吸引人们来产生网站流量&#xff0c;这些抓人眼球的信息通常是推广广告&#xff0c;有些甚至没有经过审查。 国际现状 恶意攻击者现…...

006 Linux 进程的概念 | 获取进程的PID

前言 本文将会向您进程的概念&#xff0c;程序与进程的区别&#xff0c;如何获取进程的标识符-pid 文章重点 1.描述进程——PCB 进程与程序的区别 CPU对进程列表的处理 2.获取进程PID 描述进程-PCB 进程概念 课本概念&#xff1a;程序的一个执行实例或正在执行的程序 内核…...

时序预测 | Python实现ARIMA-CNN-LSTM差分自回归移动平均模型结合卷积长短期记忆神经网络时间序列预测

时序预测 | Python实现ARIMA-CNN-LSTM差分自回归移动平均模型结合卷积长短期记忆神经网络时间序列预测 目录 时序预测 | Python实现ARIMA-CNN-LSTM差分自回归移动平均模型结合卷积长短期记忆神经网络时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 时序预测 …...

《异常检测——从经典算法到深度学习》23 TimesNet: 用于常规时间序列分析的时间二维变化模型

zz# 《异常检测——从经典算法到深度学习》 0 概论1 基于隔离森林的异常检测算法 2 基于LOF的异常检测算法3 基于One-Class SVM的异常检测算法4 基于高斯概率密度异常检测算法5 Opprentice——异常检测经典算法最终篇6 基于重构概率的 VAE 异常检测7 基于条件VAE异常检测8 Don…...

计算机网络(59)

1. OSI 的七层模型分别是&#xff1f;各自的功能是什么&#xff1f; 2. 为什么需要三次握手&#xff1f;两次不行&#xff1f; 3. 为什么需要四次挥手&#xff1f;三次不行&#xff1f; 4. TCP与UDP有哪些区别&#xff1f;各自应用场景&#xff1f; 5. HTTP1.0&#xff0c;1.1&…...

【CSS】CSS基础知识扫盲

1、 什么是CSS&#xff1f; CSS即层叠样式表 (Cascading Style Sheets). CSS 能够对网页中元素位置的排版进行像素级精确控制, 实现美化页面的效果. 能够做到页面的样式和结构分离 2、 CSS引入方式 CSS代码编写的时候有多种引入方式&#xff1a; 内部样式、外部样式、内联样…...

React中的状态管理

目录 前言 1. React中的状态管理 1.1 本地状态管理 1.2 全局状态管理 Redux React Context 2. React状态管理的优势 总结 前言 当谈到前端开发中的状态管理时&#xff0c;React是一个备受推崇的选择。React的状态管理机制被广泛应用于构建大型、复杂的应用程序&#xf…...

【优选算法系列】【专题九链表】第一节.链表常用技巧和操作总结(2. 两数相加)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、链表常用技巧和操作总结二、两数相加 2.1 题目描述 2.2 题目解析 2.2.1 算法原理 2.2.2 代码编写总结 前言 一、链表常…...

上线Spring boot-若依项目

基础环境 所有环境皆关闭防火墙与selinux 服务器功能主机IP主机名服务名称配置前端服务器192.168.231.177nginxnginx1C2G后端服务器代码打包192.168.231.178javajava、maven、nodejs4C8G数据库/缓存192.168.231.179dbmysql、redis2C4G Nginx #配置Nginxyum源 [rootnginx ~]…...

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…...

Web 架构之 CDN 加速原理与落地实践

文章目录 一、思维导图二、正文内容&#xff08;一&#xff09;CDN 基础概念1. 定义2. 组成部分 &#xff08;二&#xff09;CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 &#xff08;三&#xff09;CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 &#xf…...

智能AI电话机器人系统的识别能力现状与发展水平

一、引言 随着人工智能技术的飞速发展&#xff0c;AI电话机器人系统已经从简单的自动应答工具演变为具备复杂交互能力的智能助手。这类系统结合了语音识别、自然语言处理、情感计算和机器学习等多项前沿技术&#xff0c;在客户服务、营销推广、信息查询等领域发挥着越来越重要…...

Java编程之桥接模式

定义 桥接模式&#xff08;Bridge Pattern&#xff09;属于结构型设计模式&#xff0c;它的核心意图是将抽象部分与实现部分分离&#xff0c;使它们可以独立地变化。这种模式通过组合关系来替代继承关系&#xff0c;从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...

BLEU评分:机器翻译质量评估的黄金标准

BLEU评分&#xff1a;机器翻译质量评估的黄金标准 1. 引言 在自然语言处理(NLP)领域&#xff0c;衡量一个机器翻译模型的性能至关重要。BLEU (Bilingual Evaluation Understudy) 作为一种自动化评估指标&#xff0c;自2002年由IBM的Kishore Papineni等人提出以来&#xff0c;…...

Python 实现 Web 静态服务器(HTTP 协议)

目录 一、在本地启动 HTTP 服务器1. Windows 下安装 node.js1&#xff09;下载安装包2&#xff09;配置环境变量3&#xff09;安装镜像4&#xff09;node.js 的常用命令 2. 安装 http-server 服务3. 使用 http-server 开启服务1&#xff09;使用 http-server2&#xff09;详解 …...

Windows 下端口占用排查与释放全攻略

Windows 下端口占用排查与释放全攻略​ 在开发和运维过程中&#xff0c;经常会遇到端口被占用的问题&#xff08;如 8080、3306 等常用端口&#xff09;。本文将详细介绍如何通过命令行和图形化界面快速定位并释放被占用的端口&#xff0c;帮助你高效解决此类问题。​ 一、准…...

Linux中INADDR_ANY详解

在Linux网络编程中&#xff0c;INADDR_ANY 是一个特殊的IPv4地址常量&#xff08;定义在 <netinet/in.h> 头文件中&#xff09;&#xff0c;用于表示绑定到所有可用网络接口的地址。它是服务器程序中的常见用法&#xff0c;允许套接字监听所有本地IP地址上的连接请求。 关…...

Python爬虫(四):PyQuery 框架

PyQuery 框架详解与对比 BeautifulSoup 第一部分&#xff1a;PyQuery 框架介绍 1. PyQuery 是什么&#xff1f; PyQuery 是一个 Python 的 HTML/XML 解析库&#xff0c;它采用了 jQuery 的语法风格&#xff0c;让开发者能够用类似前端 jQuery 的方式处理文档解析。它的核心特…...

WinUI3开发_使用mica效果

简介 Mica(云母)是Windows10/11上的一种现代化效果&#xff0c;是Windows10/11上所使用的Fluent Design(设计语言)里的一个效果&#xff0c;Windows10/11上所使用的Fluent Design皆旨在于打造一个人类、通用和真正感觉与 Windows 一样的设计。 WinUI3就是Windows10/11上的一个…...