Python入门——字符串

Python快速入门(1)------字符串

最近需要使用到python,本系列适合有其他编程语言(C/C++/Java)基础的同学,帮助大家一起快速上手Python,主要介绍Python编程常用操作与其他语言的区别。本节主要介绍python的字符串

字符串

Python字符串常用操作
索引/下标访问
常用方法
常用
倒序访问
截取/切片
长度
判空
大小写
删除空白
分割
title()
upper()
lower()
strip()
lstrip()
rstrip()
spilt()
partition()

索引访问
常用

与其他语言一样,python的字符串支持下表访问

python 复制代码
message = "flower,flow,flight"
# 访问第一个字符
message[0]

除此之外,python字符串下标访问还支持倒序访问截取

倒序访问

python支持倒序访问,message[-n]即倒数第n个字符,但是无论正序还是倒序都会有越界访问检查,越界时出现IndexError

python 复制代码
message = "flower,flow,flight"
# 访问倒数第1个字符t
message[-1]
# 越界IndexError: string index out of range
message[-100]
截取/切片

其他语言截取字符串一般需要通过方法substring(),python直接根据索引可以切片,且与大多数编程语言一样是左闭右开 。python支持倒序访问截取,且遵循startIndex < endIndex,否则直接返回空字符串。

切片的完整语法:[起始索引:结束索引:步长],步长默认是 1(正向,如果为负则为负向),起始索引与结束索引可选,默认为0和字符串长度-1

步长为 0(无效,直接报错),索引不会报错自动终止

python 复制代码
message = "flower,flow,flight"
# 截取flower
message[0:6]
# 倒序访问截取flight
message[-7:-1]
# 空字符串
message[-1:-7]

这里有一些常用的技巧

  • 步长n,取所有字符(每隔n-1个取1个)s[::n]
  • 取偶数索引子字符串s[::2]
  • 取奇数索引子字符串s[1::2]
  • 反转字符串s[::-1]
常用方法
长度
python 复制代码
print(len(message))
判空
python 复制代码
empty_str = ""
# 方法一 if not
if not empty_str:
    print("空字符串")
# 方法二 == ""
print(empty_str == "")
# 方法三 判断长度
print(len(empty_str) == 0)
# 如果有空格
print(" ".isspace())
大小写
python 复制代码
message = "flower,flow,flight"
# 所有单词
print(message.title())
# 全大写
print(message.upper())
# 全小写
print(message.lower())
删除空白

python的strip()仅能删除ASCII码下的半角空格,这个是与JDK11中strip()的区别,相当于trim()

python 复制代码
# 输出:message
print(" message ".strip())
# 输出:message[空格]
print(" message ".lstrip())
# 输出:[空格]message
print(" message ".rstrip())
# 输出:essage[空格]
print(" message ".rstrip(" m"))
分割
  • split():按分割符分割为多个部分,返回列表

  • partition():按分割符分割为2部分,并保留分割符,返回元组

python 复制代码
message = "flower,flow,flight"
# 输出 ['flower', 'flow', 'flight']
print(message.split(","))
# 输出 ('flower', ',', 'flow,flight')
print(message.partition(","))
相关推荐
Yvonne爱编码2 小时前
Java 接口学习核心难点深度解析
java·开发语言·python
June bug2 小时前
(#数组/链表操作)合并两个有重复元素的无序数组,返回无重复的有序结果
数据结构·python·算法·leetcode·面试·跳槽
黎雁·泠崖2 小时前
Java继承入门:概念+特点+核心继承规则
java·开发语言
人工智能AI技术2 小时前
【Agent从入门到实践】33 集成多工具,实现Agent的工具选择与执行
人工智能·python
AIFQuant2 小时前
如何通过股票数据 API 计算 RSI、MACD 与移动平均线MA
大数据·后端·python·金融·restful
x70x802 小时前
Go中nil的使用
开发语言·后端·golang
70asunflower2 小时前
Python with 语句与上下文管理完全教程
linux·服务器·python
星辰徐哥2 小时前
Java程序的编译与运行机制
java·开发语言·编译·运行机制
deephub2 小时前
为什么标准化要用均值0和方差1?
人工智能·python·机器学习·标准化