跳到主要内容
Python 基础篇:内置类型与方法详解 | 极客日志
Python AI 算法
Python 基础篇:内置类型与方法详解 综述由AI生成 Python 的基础知识,涵盖内置类型如字符串、列表、字典、集合等的常用方法,以及类型转换、对象操作、数学运算、迭代器和文件处理等核心内置函数。文章修正了原有内容的拼写错误,补充了自定义类的定义示例和文件操作的最佳实践,旨在帮助开发者快速掌握 Python 核心语法,提升代码编写效率与规范性。
全栈工匠 发布于 2025/2/7 更新于 2026/6/2 21 浏览Python 基础篇:内置类型与方法详解
Python 是众多编程语言中较为高级但也相对较慢的语言。因此,灵活地使用 Python 内置的类和方法既可以减少代码量,也可以提高代码的运行速度。本文主要归纳 Python 的一些基础知识,包括基本的内置类型、常用内置方法以及文件操作的一些使用方法。对于这些方法我们不需要死记硬背,只需理解掌握如何使用即可,在需要使用的时候可以查阅文档或调用 help() 方法直接查询。
一、基本的内置类型
Python 最基础、最常用的类主要有 int(整形)、float(浮点型)、str(字符串)、list(列表)、dict(字典)、set(集合)、tuple(元组)等。
int 和 float :一般用于给变量赋值,进行数值计算。
tuple(元组) :属于不可变对象,对其操作一般只有遍历,常用于存储固定数据。
str、list、dict、set :是 Python 里面操作方法较为灵活且最为常用的数据结构。掌握这四种类型的操作方法后,基本就可以灵活使用 Python 中的大部分基础功能。
1. str 字符串
1)条件判断方法
in 方法 :判断内容是否存在字符串中。
表达式:a in b,判断 a 是否在 b 中,是则返回 True,否则为 False。
not 方法 :返回表达式结果的相反值。如果表达式结果为真,则返回 False。
表达式:a not in b,判断 a 是否不在 b 中,不在则返回 True,否则为 False。
is 方法 :判断的是内存地址是否相同。
表达式:a is b,判断 a, b 的内存地址是否相同,是则返回 True,否则为 False。
2)取值方法
下标取值 :可以通过下标进行取值。
a[2 ]
切片 :支持切片操作。
a[2 :3 ]
循环取值 :通过 for 循环遍历字符串。
3)元素判断与操作的方法
a.endswith('d' )
a.startswith('d' )
a.isalnum()
a.isalpha()
a.isdigit()
a.isspace()
a.istitle()
a.islower()
a.isupper()
a.lower()
a.upper()
a.swapcase()
a.capitalize()
a.title()
4)去除字符串指定元素方法
a.lstrip('m' )
a.rstrip('m' )
a.strip('m' )
5)join 方法
'm' .join(str )
'm' .join(list )
6)替换方法
st.replace('a' , 'b' , n)
p = str .maketrans('abcdefg' , '1234567' )
'ccaegg' .translate(p)
st.expandtabs(tabsize=8 )
7)检索 a.find(b, 3 , 10 )
a.rfind(b, 3 , 10 )
a[2 ]
a.index(b)
a.rindex(b)
a.count(b)
8)切割字符串
a.split(b)
a.splitlines()
a.partition(b)
a.rpartition(b)
9)随机字符库 string import string
string.ascii_letters
string.digits
string.ascii_lowercase
string.ascii_uppercase
10)格式化字符串
"{name}huh{age}" .format (name='byz' , age=18 )
"{name}huh{age}" .format_map({'name' : 'zhangsan' , 'age' : 18 })
"%d%f%s" % (2 , 3.14 , "huh" )
a.center(n, b)
a.ljust(n, b)
a.rjust(n, b)
a.zfill(n)
11)编码 str .decode(encoding[, replace])
str .encode(encoding[, replace])
2. list 列表
1)增加 <list >.append(<obj>)
<list >.insert(<index>, <obj>)
<list >.extend(<list >)
2)删除 del list [<index>]
<list >.pop(<index>)
<list >.remove(<obj>)
<list >.clear()
3)修改
4)检索 <list >.index(<obj>)
<list >.count(<obj>)
5)排序 <list >.sort(key=<排序规则>, reverse=<boolean>)
sorted (<可迭代对象>, key=<排序规则>, reverse=<boolean>)
<list >.reverse()
6)复制
3. dict 字典 .clear()
.copy()
.fromkeys()
.get(key, default=None )
key in dict
.items()
.keys()
.setdefault(key, default=None )
.update()
.values()
.pop(key[, .default])
.popitem()
4. set 集合
1)以下方法返回一个新的集合 集合(S).方法名 等价符号 方法说明 s.issubset(t) s<=t 子集(允许不严格意义上的子集):s 中所有的元素都是 t 的成员 s<t 真子集(严格意义上的子集):s!=t 且 s 中所有的元素都是 t 的成员 s.issuperset(t) s>=t 超集(允许不严格意义上的超集):t 中所有的元素都是 s 的成员 s>t 超集(严格意义上的超集):t!=s 且 t 中所有的元素都是 s 的成员 s.union(t) s t s.intersection(t) s&t 交集操作:s 与 t 中的交集 s.difference(t) s-t 差集操作:在 s 中存在但在 t 中不存在的元素 s.symmetric_difference(t) s^t 对称差分操作:s 或 t 中的元素,而不是两者共有的元素 s.copy() 无 返回 s 的拷贝(浅复制)
2)以下方法是对原来集合 s 的操作 集合(S).方法名 等价符号 方法说明 s.update(t) s = t s.intersection_update(t) s &= t 交集修改操作:s 中仅包含 s 与 t 共有的元素 s.difference_update(t) s -= t 差集修改操作:s 中仅包括 s 中存在但 t 中不存在的元素 s.symmetric_difference_update(t) s ^= t 对称差分修改操作 s.add(obj) 添加操作:将 obj 添加到 s s.remove(obj) 删除操作:将 obj 从 s 中移除,若不存在会引发异常 s.discard(obj) 丢弃操作:将 obj 从 s 中删除,如果不存在也没事 s.pop() 弹出操作:移除并返回 s 中的任意一个元素 s.clear() 清除操作:清除 s 中的所有元素 s.isdisjoint(t) 若 s 与 t 无交集,则返回 True,否则返回 False
5. 自定义类(Class) 虽然 Python 内置了丰富的数据类型,但在实际开发中,我们经常需要定义自己的类来封装数据和行为。
class Person :
def __init__ (self, name, age ):
self .name = name
self .age = age
def introduce (self ):
return f"Hello, I am {self.name} , {self.age} years old."
p = Person("Alice" , 25 )
print (p.introduce())
二、内置方法 较多的内置方法也是 Python 区别于其他编程语言的一个特点,熟练掌握这些内置方法的使用就已经可以实现 Python 大部分的功能,灵活使用 Python 的内置方法可以大幅度提高代码的速度以及减少代码量。
1. 类型转换 bool (object )
str (object , encoding=encoding, errors=errors)
int (value, base=10 )
float (value)
complex (real, imaginary)
list (iterable)
tuple (iterable)
set (iterable)
dict (key1=value1, key2=value2...)
enumerate (iterable, start=0 )
2. 对象及属性操作 object ()
callable (object )
isinstance (object , class )
id (object )
type (object )
len (object )
memoryview (obj)
globals ()
locals ()
vars (object )
dir (object )
delattr (object , attribute)
getattr (object , attr[, default])
hasattr (object , attribute)
setattr (object , attribute, value)
issubclass (child, father)
super ()
3. 数学操作 abs (x)
round (number, ndigits=None )
bin (n)
hex (number)
oct (n)
divmod (x, y)
pow (base, exp, mod=None )
max ()
min ()
sum (iterable, start=0 )
4. 迭代器操作 all (iterable)
any (iterable)
iter ()
next (iterator[, default])
frozenset (iterable)
filter (func, iterable)
map (function, iterable, ...)
zip (iterables...)
range (start=0 , stop[, step=1 ])
slice (start, end, step)
reversed (sequence)
sorted (iterable, key=None , reverse=False )
5. 字符串操作 ascii (object )
chr (x)
format (value, format_spec='' )
ord (c)
6. 字节操作 bytearray (x, encoding, error)
bytes (x, encoding, error)
7. 编译输入输出 compile (source, filename, mode, flags=0 , dont_inherit=False , optimize=-1 )
eval (source, globals =None , locals =None )
exec (source, globals =None , locals =None )
input (prompt)
print (value,..., sep=' ' , end='\n' , file=sys.stdout, flush=False )
三、文件操作 任何编程语言都需要对文件系统进行操作,且大部分的编程语言的文件操作方法大致相似,如果掌握了其中一种,其他编程语言的文件操作也可手到擒来。
1. 打开文件 open (file, mode='r' , buffering=-1 , encoding=None , errors=None , newline=None , closefd=True , opener=None )
file : 文件地址
mode : 文件打开模式(如 'r', 'w', 'a', 'rb' 等)
buffering : 寄存行缓冲区的大小(整数),-1 为默认大小
encoding : 打开文件时的编码格式
newline : 若不设置,universal newlines mode 工作(不同操作系统换行符不一样)
2. 文件对象的属性 f.buffer
f.closed
f.encoding
f.errors
f.line_buffering
f.mode
f.name
f.newlines
f.write_through
3. 文件对象的操作 f.close()
f.detach()
f.fileno()
f.flush()
f.isatty()
f.read(size)
f.readable()
f.readline(size)
f.readlines(sizehint)
f.reconfigure(encoding=None , errors=None , newline=None , line_buffering=None , write_through=None )
f.seek(offset)
f.seekable()
f.tell()
f.truncate(size=None )
f.write(str )
f.writable()
f.writelines(list )
最佳实践提示 :
在使用文件操作时,推荐使用 with 语句来自动管理资源,确保文件在使用后正确关闭。
with open ('example.txt' , 'r' , encoding='utf-8' ) as f:
content = f.read()
print (content)
通过掌握上述内置类型、方法和文件操作,你可以更高效地编写 Python 程序。建议在实际项目中多查阅官方文档,结合具体场景灵活运用。
相关免费在线工具 加密/解密文本 使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
RSA密钥对生成器 生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
Mermaid 预览与可视化编辑 基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
随机西班牙地址生成器 随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online
Gemini 图片去水印 基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online
curl 转代码 解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online