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

news2024/11/26 20:51:24

这里汇总记录一些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() # 将一个字符串编译为字节代码,不用掌握

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1170546.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CRM系统的常用功能

CRM系统旨在帮助企业有效管理客户关系&#xff0c;提升销售和市场营销业绩&#xff0c;以及提供优质的客户服务。以下是CRM系统常见的功能和模块&#xff1a; 1. 客户信息管理&#xff1a; - 中央化存储客户信息&#xff1a;CRM系统允许企业集中管理和维护客户信息&#xff0c…

腾讯云3年/5年时长云服务器购买攻略分享

腾讯云是腾讯旗下云计算品牌&#xff0c;为了吸引用户经常推出各种优惠活动&#xff0c;最吸引用户的还是特惠云服务器&#xff0c;下面给大家分享腾讯云3年/5年时长特惠服务器购买入口及攻略&#xff01; 购买入口&#xff1a;传送门>>> 购买攻略&#xff1a; 进入…

算法通关村第六关-白银挑战树

大家好我是苏麟 , 今天聊聊树 . 大纲 树的概念二叉树满二叉树完全二叉树 树的性质树的定义与存储方式树的遍历 树的概念 树是我们计算机中非常重要的一种数据结构&#xff0c;同时使用树这种数据结构&#xff0c;可以描述现实生活中的很多事物&#xff0c;例如家谱、单位的组织…

01-单节点部署clickhouse及简单使用

1、下载rpm安装包&#xff1a; 官网&#xff1a;https://packages.clickhouse.com/rpm/stable/ clickhouse19.4版本之后只需下载3个rpm安装包&#xff0c;上传到节点目录即可 2、rpm包安装&#xff1a; 安装顺序为conmon->server->client 执行 rpm -ivh ./clickhouse-…

第二十五章 BEV感知系列二(车道线感知)

前言 近期参与到了手写AI的车道线检测的学习中去&#xff0c;以此系列笔记记录学习与思考的全过程。车道线检测系列会持续更新&#xff0c;力求完整精炼&#xff0c;引人启示。所需前期知识&#xff0c;可以结合手写AI进行系统的学习。 BEV感知系列是对论文Delving into the De…

proxifier 2023年11月最新版的安装

前言 Proxifier 是一款功能非常强大的socks5客户端&#xff0c;可以让不支持通过代理服务器工作的网络程序能通过HTTPS或SOCKS代理或代理链。支持64位系统支持Xp&#xff0c;Vista&#xff0c;Win7&#xff0c;支持socks4&#xff0c;socks5&#xff0c;http 代理协议&#xf…

python 深度学习 解决遇到的报错问题8

本篇继python 深度学习 解决遇到的报错问题7-CSDN博客 目录 一、OSError: [WinError 127] 找不到指定的程序。 Error loading "D:\my_ruanjian\conda-myenvs\deeplearning\lib\site-packages\torch\lib\caffe2_detectron_ops.dll" or one of its dependencies. 二、…

婚庆策划小程序制作教程

本文将向你展示如何使用小程序制作平台&#xff0c;轻松制作婚庆策划小程序。只需按照以下步骤操作&#xff0c;你就能拥有自己的专业级婚庆策划小程序。 登录小程序制作平台 首先&#xff0c;你需要登录小程序制作平台。在浏览器搜索乔拓云&#xff0c;然后使用你的账号登录。…

【复盘】记录一次JVM 异常问题 java.lang.OutOfMemoryError: unable to create new native thread

背景是最新运营提了一个需求&#xff0c;需要根据用户信息拉去三分机构的信贷数据&#xff0c;需要达到一天百万级别&#xff0c;但是经过实际测试&#xff0c;也只能达到40W量级&#xff0c;具体就是通过起多个Spring Boot项目&#xff0c;每个项目1S拉一个用户&#xff0c;基…

Docker网络模式_Docker常用命令_以及Docker如何给运行的镜像内容连接互联网_Docker网络模式原理---Docker工作笔记004

然后我们来看一下docker的网络模式: 这个docker我们先看一下电脑上的网络,有两个,1个是lo是测试用的一个是enp0s3这个是我们以太网地址,然后我们去: 安装docker 安装后我们再去ip address可以看到多出来一个网络是docker0 这里ip地址是172.17.0.1这个是私有地址外部无法访问 这…

软件测试必备技能—接口测试

接口测试&#xff0c;其实并没有那么可怕&#xff0c;但是作为测试人员也是必不可少的技能。 接口分为&#xff1a;内部接口和外部接口。 内部接口&#xff1a;是浏览器与服务器的接口。这个很容易理解&#xff0c;web开发一般分前端和后端&#xff0c;前端开发人员用html/cs…

基于Python+Pygame实现一个滑雪小游戏

目录 项目介绍Pygame介绍项目文件夹介绍演示视频代码免费领取 一、项目介绍 使用介绍&#xff1a;运行main.py文件后&#xff0c;通过左右按键可以控制小人的移动&#xff0c;如果经过旗杆那么10分&#xff0c;如果碰到树木那么减50分。 二、Pygame介绍 Pygame是一个用于游…

MS5910PA为行业内领先的可配置10bit到16bit分辨率的旋变数字转换器,可替代AD2S1210

MS5910PA 是一款可配置 10bit 到 16bit 分辨率的旋 变数字转换器。片上集成正弦波激励电路&#xff0c;正弦和余弦 允许输入峰峰值幅度为 2.3V 到 4.0V &#xff0c;频率范围为 2kHz 至 20kHz 。 转换器可并行或串行输出角度和速度对应的 数字量。 MS5910PA 采…

【解锁未来】探索Web3的无限可能-02

文章目录 什么是Web3 &#xff1f;Web3对公司的意义&#xff1f; 什么是Web3 &#xff1f; 简单地说&#xff0c;Web3 是加密货币的延伸&#xff0c;它以新的方式使用区块链来达到新的目的。区块链可以存储钱包中代币的数量、自我执行合同的条款或去中心化应用程序&#xff08;…

【Python】collections.deque

Python的collections模块是容器数据类型&#xff0c;其中的deque对象是队列容器。返回双向队列对象&#xff0c;类似列表。 from collections import deque[x for x in dir(deque) if not x.startswith(_)] # 结果&#xff1a; [append, appendleft, clear, copy, count, exte…

【Spring MVC】Spring MVC框架的介绍及其使用方法

目录 一、MVC模式 1.1 MVC模式的发展 1.1.1 Model1 模型 1.1.2 Model2 模型 1.2 MVC模式简介 1.模型(Model) 2.视图(View) 3.控制器(Controller) 二、Spring MVC模型简介 三、Spring MVC 六大核心组件 3.1 六大组件简介 1.前端控制器 DispatcherServlet&#xff08…

机器学习(深度学习)轴承故障诊断分类(提供故障数据和python代码实现)

机器学习&#xff08;深度学习&#xff09;故障诊断分类&#xff08;提供故障数据和python代码实现&#xff09; 轴承故障数据集和python代码自取&#xff1a;https://mbd.pub/o/bread/ZZWTm5hw 摘要&#xff1a;机器学习广泛的应用于机械故障诊断和故障分类问题&#xff0c;本…

全志H6-LicheePi调试记录

LPDDR3&#xff1a;K4E6E304ED-EGCG和K4E6E304ED-EGCF 最高速率不一样&#xff0c;CG是2133MHz&#xff0c;CF是1866MHz

【leetcode】27. 原地移除元素(图解)

目录 1. 思路&#xff08;图解&#xff09;2. 代码 题目链接&#xff1a;leetcode 27. 移除元素 题目描述&#xff1a; 需要注意的是&#xff0c;返回的是新数组长度&#xff0c;但是输出的是数组元素。 1. 思路&#xff08;图解&#xff09; 思路一&#xff1a;空间换时间…

基于SSM的流浪动物领养系统网站设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用JSP技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…