Python教程

Python语言之字符串

本文主要是介绍Python语言之字符串,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Python语言之字符串

前言

人生苦短,我用Python。

一、字符串介绍

什么是字符串

字符串是一种表示文本数据的类型。

s = 'abc'或"abc"或'''abc'''或""abc""

转义字符

对于单引号或者双引号这些特殊的符号,我们可以对他们进行转义。

 \(在行尾时)        续行符号
 \\                反斜杠符号
 \"                双引号
 \n                换行
 \b                退格
 \t                横向制表符

思考一刻:

运行如下代码时候,为什么会空出2行?
print('Start')
print('\n')
print('End')

因为print函数自身带了一个换行,如果使用print()就可以输出一个换行

二、字符串的输出和输入

字符串的输出

常见的格式化符号

%s               通过str()字符串转换来格式化
%d               有符号十进制整数
%f               浮点实数
例:
name1 ="小明"
name2="小红"
print("大家好,我叫%s"%name1)
print("大家好,我们是%s和%s"%(name1,name2))

字符串的输入

Python3提供了 input() 函数从标准输入读取一行文本,默认的标准输入是键盘。input可以接收一个Python表达式作为输入,并将运算结果返回。

username=input("请输入用户名")
print(username)

三、访问字符串中的值

字符串的存储方式

字符串中的每个字符都对应一个下标,下标编号是从0开始的。

字符串: a   b   c   d   e   f   g
下标:  [0] [1] [2] [3] [4] [5] [6]

切片

切片的语法格式如下所示:

[起始:结束:步长]

切片选取的区间属于左闭右开型,即从"起始"位开始,到"结束"位的前一位结束(不包含结束位本身)

使用切片截取字符串:

假设有字符串 name="abcdef",则:

name[ 0 : 3 ]为abc
name[ 3 : 5 ]为de
name[ 1 : ]为bcdef
name[ 1 : -1 ]为bcde
name[ : : -2 ]为fdb
name[ 1 : -1 : 2 ]为bd

四、字符串内建函数

find函数:检测字符串是否包括子字符串

str.find(str, beg=0, end=len(string))
例:s.find(‘c’,0,1)

参数如下:
str -- 指定检索的字符串。
beg -- 开始索引,默认为0。(包括)
end -- 结束索引,默认为字符串的长度。(不包括)
找到则返回索引位置,找不返回-1。

index函数:检测字符串是否包括子字符串

str.index(str, beg=0, end=len(string))

参数如下:
str -- 指定检索的字符串。
beg -- 开始索引,默认为0。(包括)
end -- 结束索引,默认为字符串的长度。(不包括)
找到则返回索引位置,找不到抛出异常。

count函数:统计字符串中某个字符、字符串的个数

str.count(sub, start= 0, end=len(string))

参数如下:
sub -- 搜索的子字符串
start -- 字符串开始搜索的位置(包括)
end -- 字符串中结束搜索的位置(不包括)

replace函数:将旧字符串替换为新字符串

str.replace(old, new[, max])

参数如下:
old -- 将被替换的字符串。
new -- 新字符串,用于替换old字符串。
max -- 可选字符串,替换不超过max次(<=max次)

splite函数:通过指定分隔符对字符串进行切片

str.split(str="", num=string.count(str))

参数如下:
str -- 分隔符。默认为所有空字符,如空格,tab等。
num -- 分割次(默认:有多少个str分割多少次)

capitalize:第一个字符大写,其他字符小写

str.capitalize()

title:所有单词首字母大写,其余字母小写

str.title()

startswith:检查字符串是否以指定子串开头

str.startswith(str, beg=0,end=len(string))

参数如下:
str -- 检测的字符串。
strbeg -- 可选参数用于设置字符串检测的起始位置。(包括)
strend -- 可选参数用于设置字符串检测的结束位置。(不包括)

endswith:检查字符串是否以指定子串结尾

str.endswith(suffix[, start[, end]])

参数如下:
suffix -- 该参数可以是一个字符串或者是一个元素。
start -- 字符串中的开始位置。(包括)
end -- 字符串中的结束位置。(不包括)

upper:将小写字母转为大写字母

str.upper()
mystr = 'hello world itheima and itheimaApp'
newStr = mystr.upper()
结果为:HELLO WORLD ITHEIMA AND ITHEIMAAPP

lower:将大写字母转为小写字母

str.lower()

ljust:左对齐,使用空格填充至指定长度的新字符串

str.ljust(width[, fillchar])

参数如下:
width -- 指定字符串长度。
fillchar -- 填充字符,默认为空格。
注:字符串在右边进行填充

rjust:右对齐,使用空格填充至指定长度的新字符串

str.rjust(width[, fillchar])

参数如下:
width -- 指定字符串长度。
fillchar -- 填充字符,默认为空格。

center:返回一个指定的宽度 width 居中的字符串

str.center(width[, fillchar])

参数如下:
width -- 字符串的总宽度。
fillchar -- 填充字符。

lstrip:截掉字符串左边的空格或指定字符

str.lstrip([chars])

参数如下:
chars --指定删除的字符。
注:从字符串最左边开始

rstrip:截掉字符串右边的空格或指定字符

str.rstrip([chars])

参数如下:
chars –指定删除的字符。

strip:截掉字符串左右边的空格或指定字符

str.strip([chars])

参数如下:
chars --移除字符串头尾指定的字符。

五、字符串运算符

操作符与其描述:
 +             字符串连接
 *             重复输出字符串
 []            通过索引获取字符串中的字符(a[1]获取第一个字符)
 [:]           截取字符串中的一部分
 in            成员运算符,如果字符串中包含给定的字符或字符串,返回True 
 not in        成员运算符。如果字符串中不包含给定字符或字符串,返回True
 r/R           原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。如print(r'\n')打印出来的是\n
 f             格式化字符串常量,是Python3.6新引入的一种字符串格式化方法,使格式化字符串的操作更加简便。
                 name = "小明"
                 print('他是{name}')
                 print(f'他是{name}')

结尾

这篇关于Python语言之字符串的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!