Python 数组与字符串
·
一、字符串(String)
1. 定义与特点
- 由字符组成的有序序列,属于不可变类型,创建后不能直接修改单个字符
- 定义方式:单引号、双引号、三引号
python
运行
s1 = '好好学习'
s2 = "天天向上"
s3 = """多行
文本内容"""
2. 下标取值与切片
下标取值
从 0 开始正数索引,从 - 1 开始倒数索引
python
运行
str1 = "python"
print(str1[0]) # p
print(str1[-1]) # n
切片语法
字符串[起始下标:结束下标:步长]
- 左闭右开,取不到结束位置
- 省略起始默认从头开始,省略结束默认到末尾
python
运行
s = "abcdefgh"
print(s[1:5]) # bcde
print(s[:4]) # abcd
print(s[2:]) # cdefgh
print(s[::2]) # 隔一个取一个
print(s[::-1]) # 字符串反转
3. 字符串常用运算符
python
运行
# 拼接
a = "你好" + "Python"
# 重复输出
print("加油" * 3)
# 判断是否包含
print("py" in "python")
4. 高频内置方法
python
运行
s = " Hello Python "
# 去除首尾空格
s.strip()
# 左右单侧去空格
s.lstrip()
s.rstrip()
# 大小写转换
s.upper() # 全部大写
s.lower() # 全部小写
s.title() # 首字母大写
# 分割与合并
s.split(" ") # 按指定字符分割成列表
"_".join(["a","b"]) # 列表拼接成字符串
# 替换内容
s.replace("Hello","Hi")
# 判断开头结尾
s.startswith("He")
s.endswith("on")
# 查找字符位置
s.find("o") # 找不到返回-1
s.index("o") # 找不到直接报错
5. 字符串遍历
python
运行
text = "编程学习"
for char in text:
print(char)
6. 格式化输出
python
运行
name = "小明"
age = 18
# 方式1
print("姓名:%s,年龄:%d" % (name,age))
# 方式2
print(f"姓名:{name},年龄:{age}")
二、Python 数组(列表 List 通用数组)
1. 定义与特点
- 有序可变序列,可存放数字、字符串、列表、对象任意数据
- 支持增删改查,使用最广泛
python
运行
# 空数组
arr1 = []
# 数值数组
arr2 = [10,20,30,40]
# 混合类型数组
arr3 = [1,"张三",3.14]
2. 下标取值与切片
用法和字符串完全一致
python
运行
nums = [1,2,3,4,5]
print(nums[0])
print(nums[1:3])
print(nums[::-1])
3. 数组增删改查
增加元素
python
运行
arr = [1,2,3]
arr.append(4) # 末尾追加
arr.insert(1,99) # 指定下标插入
arr.extend([5,6]) # 合并另一个数组
删除元素
python
运行
arr.pop() # 删除最后一个
arr.pop(0) # 删除指定下标
arr.remove(2) # 删除指定值
del arr[0] # 删除下标元素
arr.clear() # 清空数组
修改元素
python
运行
arr[0] = 100
查询元素
python
运行
print(arr[2]) # 按下标查
print(2 in arr) # 判断元素是否存在
print(arr.index(3)) # 查找元素下标
4. 数组常用函数与方法
python
运行
nums = [5,2,9,1]
len(nums) # 获取长度
max(nums) # 最大值
min(nums) # 最小值
sum(nums) # 数组求和
nums.sort() # 升序排序
nums.sort(reverse=True) # 降序
nums.reverse() # 数组反转
nums.count(2) # 统计元素出现次数
5. 数组遍历
python
运行
# 直接遍历元素
for i in nums:
print(i)
# 按下标遍历
for j in range(len(nums)):
print(nums[j])
6. 二维数组(嵌套数组)
python
运行
# 表格格式数据
two_arr = [[1,2],[3,4],[5,6]]
# 取值
print(two_arr[0][1])
三、字符串与数组相互转换
1. 字符串 → 列表(数组)
python
运行
# 按空格分割
s1 = "Java Python C++"
list1 = s1.split()
# 按指定符号分割
s2 = "苹果,香蕉,橘子"
list2 = s2.split(",")
2. 列表(数组)→ 字符串
python
运行
li = ["我","爱","编程"]
res = "".join(li)
# 中间加符号拼接
res2 = "-".join(li)
四、核心区别总结
-
字符串
- 不可修改,不能直接修改内部字符
- 多用于文本处理、信息展示、账号密码
- 元素只能是字符
-
列表数组
- 灵活可变,随时增删改
- 多用于数据存储、批量数据处理、项目数据管理
- 可存放任意类型数据
更多推荐

所有评论(0)