python基础知识(三):字符串的相关操作+运算符的使用

文章目录

一 、字符串的相关操作

(一)字符串的创建

① 单引号和双引号都可以创建字符串。

>>>a=' I "love" chocolate ' #当字符串中需要用到双引号时,应在句首和句末用单引号来创建字符串
>>>b=" i'm a girl "  #当字符串中需要用到单引号时,应在句首和句末用双引号来创建字符串

②三个连续的单引号和三个双引号可以创建多行的字符串,此时字符串中可以随意使用单引号和双引号

(二)字符串的输入

myname=input("请输入名字")

(三)转义字符

转义字符可以用于进行一些特殊操作,比如在字符串中引用单引号、换行等。
《python基础知识(三):字符串的相关操作+运算符的使用》

(四)字符串的拼接

①使用加号+
②将多个字面字符串直接放到一起实现拼接

(五)字符串的合并

join():将列表中的一系列子字符串连接成一个字符串。

>>>a=['to','be','or','not']
>>>'*'.join(a)
'to*be*or*not'

注:join()和加号+都可以用来拼接,但是使用+拼接字符串时,会生成新的字符串对象,join()为逐一拷贝再拼接,因此不推荐使用+。

(六)字符串的复制

使用*

>>>"aa"*3 
"aaaaaa"

(七)字符串的提取

提取字符串的某个位置上的字符:
①正向搜索
在字符串后面加[len(str)-1](从左往右数,第一个字符是0)
②反向搜索
在字符串后面加[-len(str)](从右往左数,第一个字符是-1)
注:不能超出索引范围

(八)字符串的切片

切片slice操作:指的是对字符串进行截取,标准格式为:[起始偏移量:start:终止偏移量end:步长step]
《python基础知识(三):字符串的相关操作+运算符的使用》

反向提取字符串:《python基础知识(三):字符串的相关操作+运算符的使用》
注:切片操作时,起始和终止偏移量不在[0,字符串长度-1]范围内,也不会报错。小于0,会被当做0(字符串开头);大于(字符串长度-1),会被当做-1(字符串的末尾)。

(九)字符串的分割

split()函数:指定分隔符,将字符串分割成多个子字符串。如果不指定,将会默认为空白字符(空格、制表符、换行符)。

>>>a='to be or not'
>>>a.split('be')
['to','or not']

(十)字符串的修改

a.replace(‘c’,‘高’)可以生成一个新的字符串,但是这个字符串不是a,a本身没被修改。只有令a=a.replace(‘c’,‘高’),a才会被修改。
《python基础知识(三):字符串的相关操作+运算符的使用》

(十一)去除首尾信息

通过strip()去除字符串首尾指定信息,如果括号内什么都不写,则去除首尾的空格。

a="*abc*"
a.strip("*")

(十二)字符串的不换行打印

打印结束后,不想换行,可以使用end=’’

print("aa",end='') #结尾不换行
print("bb",end='\t') #结尾加制表符
print("bb",end='\n') #结尾加换行符
print("bb",end='*') #结尾加*

(十三)字符串的驻留机制

当两个变量都引用符合标识符规则的字符串(仅包含下划线_、字母和数字)时,python会启动字符串的驻留机制,使两个字符串都指向同一个地址。

>>>a='abc_33'
>>>b='abc_33'
>>>a is b
True
>>>a='cd#'
>>>b='cd#'
>>>a is b # is比较的是对象的地址
False
>>>a==b # = =比较的是对象的值
True

(十四)字符串常用的查找方法

a.startwith(‘我’) #查看字符串a是否以‘我’开头
a.endwith(‘你’) #查看字符串a是否以‘你’结尾
a.find(‘哈’) #查看字符‘哈’在字符串中第一次出现的位置
a.rfind(‘是’) #查看字符‘是’在字符串中最后一次出现的位置
a.count(‘编程’) #查看’编程’出现了几次
a.isalnum() #查看字符串中是否所有字符都是数字或字母

(十五)字符串的大小写转换

《python基础知识(三):字符串的相关操作+运算符的使用》

(十六)字符串的排版

>>>a="bcd"
>>>a.center(10,"*") #将字符串a居中,左右两边用*填满。所有的*和字符串a一共是10个字符
>>>a.ljust(10,"*")#将字符串a居左,右边用*填满

(十七)字符串的格式化

①format()函数可以不限参数,位置可以不按顺序。

#定义字符串,字符串中的参数用{参数名}来进行代替
>>>a='我的名字是{name},年龄是{age}。所有人都喜欢{name}' 
>>>a.format(name='心心',age=18)
'我的名字是心心,年龄是18.所有人都喜欢心心'

②填充与对齐:填充经常与对齐一起使用。^、<、>分别是居中、左对齐和右对齐,这三个符号后面带的数字表示字符串的总宽度。

#{name:*^8}表示将name居中,左右两边用*填充,总长度为8
>>>a='我的名字是{name:*^8},年龄是{age}。所有人都喜欢{name}' 
>>>a.format(name='心心',age=18)

③数字格式化
《python基础知识(三):字符串的相关操作+运算符的使用》

(十八)其他方法

《python基础知识(三):字符串的相关操作+运算符的使用》
《python基础知识(三):字符串的相关操作+运算符的使用》

二、可变字符串

在python中,字符串属于不可变对象。无法修改,只能覆盖。因此,一般情况下修改字符串,需要新建一个字符串对象,如a=a.replace(‘高’,‘c’)。如果想要原地修改字符串,可以使用**io.stringIO()**函数。

>>>import io 
>>>s="hello, sxt"
>>>sio=io.stringIO(s) #sio为可变的字符串对象
>>>sio.getvalue() #查看sio的值
'hello, sxt'
>>>sio.seek(8) #将指针移动到字符串下标索引为8的位置
8
>>>sio.write("成")#将第八个字符改为成
1
>>>sio.getvalue()
'hello.s成t'

三、运算符的使用

基本规则:

  • 乘除优先加减
  • 算术运算符、位运算符>比较运算符>复合赋值运算符>逻辑运算符

(一)算术运算符

《python基础知识(三):字符串的相关操作+运算符的使用》
《python基础知识(三):字符串的相关操作+运算符的使用》
使用divmod()函数,可以同时得到商和余数

>>>divmod(13,3)
(4,1)

(二)按位操作符

依次对二进制上每一个比特位的数字进行比较:

  • 按位或(|):至少有一个比特位上的数字为1时,结果为1,否则为0;
  • 按位与(&):当两个比特位上的数字都为1时,结果为1,否则为0;
  • 按位异或(^):有且只有一个比特位上的数字为1时,结果为1,否则为0;
  • 左移(<):左移一位(一个<)相当于乘以2;两个(<<)相当于乘以4;
  • 右移(>>):右移一位(一个>)相当于除以2;两个(>>)相当于除以4;

(三)比较运算符

《python基础知识(三):字符串的相关操作+运算符的使用》
注:在python中,可以连用比较运算符,如下所示:

>>>a=8
>>>3<a<10
True

(四)复合赋值运算符

《python基础知识(三):字符串的相关操作+运算符的使用》
注:增强型赋值运算符之间不要加空格,如“+=”是正确的,“+ =”会报错
注:python不支持自加、自减,即a++、a–

(五)逻辑运算符

《python基础知识(三):字符串的相关操作+运算符的使用》

>>>a=TRUE
>>>b=30
>>>a or b
True
>>>a and b
30

(六)同一运算符

《python基础知识(三):字符串的相关操作+运算符的使用》
同一运算符用于比较两个对象的存储单元,实际比较的是对象的地址。

-is 和==的区别
is用于判断两个变量引用的对象是否为同一个,即地址是否相同;
= =用于判断两个变量的值是否相等,默认调用对象的_eq_()函数
《python基础知识(三):字符串的相关操作+运算符的使用》
注:在命令行中,将小整数对象[-5,256]赋值给变量时,变量存储的地址是相同的。这是因为python会对小整数对象进行缓存,因此变量地址不变;对于不是小整数对象的赋值,变量储存的地址不同。
在pycharm或者保存为文件执行时,将范围是[-5,任意正整数]的整数赋值给变量,变量存储的地址不变。这是因为计时器对其做了一部分优化。
《python基础知识(三):字符串的相关操作+运算符的使用》
注:is运算符比= = 效率高,因此当变量和NONE作比较时,应使用is。

(七)成员操作符

in/not in,用以判断某个字符(子字符串)是否存在于字符串中。

>>> 'aa' in 'aabbcc'
True
    原文作者:yundanyi291
    原文地址: https://blog.csdn.net/qq_32419125/article/details/108830709
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞