Python学习笔记:字符串(str)基本内容

1.创建字符串。

创建字符串就跟创建变量一样很简单。使用引号将字符串内容包含起来就好,可以用单引号,双引号,三引号。

>>> S = 'abc'
>>> S
'abc'
>>> S = "abc"
>>> S
'abc'
>>> S = """abc"""
>>> S
'abc'

使用单引号的时候,内容可以包含双引号,反之使用双引号时,内容一刻包含单引号,也就是说引号可以交替使用。

>>> S = 'abc"d'
>>> S
'abc"d'
>>> S = "abc'd"
>>> S
"abc'd"
>>> S = 'abc'd'
SyntaxError: invalid syntax
>>> S = "abc"d"
SyntaxError: invalid syntax

使用三引号时,单引号自动转义输出,三引号可以换行操作。

>>> S = """
a
b
c
"""
>>> S
'\na\nb\nc\n'  #直接输出时,转义字符 不实现。
>>> print(S)

a
b
c
>>> S = """abc'd   abc"abc"""
>>> S
'abc\'d   abc"abc'<span style="white-space:pre">	</span><span style="font-family: Arial, Helvetica, sans-serif;">#直接输出时,单引号以转义字符的形式输出</span>
>>> print(S)
abc'd   abc"abc

2.使用字符串。

跟其他序列一样,字符串使用切片索引就好了。但是字符串不能修改。

>>> S = 'abc'
>>> S[0]
'a'
>>> S[0] = 'b'   #试图修改报错。
Traceback (most recent call last):
  File "<pyshell#27>", line 1, in <module>
    S[0] = 'b'
TypeError: 'str' object does not support item assignment

切片。

>>> S = 'abcdef'
>>> S
'abcdef'
>>> S[1:3]
'bc'
>>> S[5:1:-2]
'fd'
>>> S[1:3:2]
'b'

其他都跟列表,元组类似,在此不更多叙述。

3.用 ‘ + ’ 更改字符串。

字符串不能够修改,但是非要改变其中的内容也是可以实现的,就是使用‘ +   ’ 来更改字符串。

>>> S = 'abcdef'
>>> S
'abcdef'
>>> S = S[1:] + 'python'  #用 1 后面的内容加上新的内容,包含 1 。
>>> S
'bcdefpython'
<pre name="code" class="python">>>> S = 'abcdef'
>>> S
'abcdef'

>>> S = S[:2] + ‘python‘ #用 2 之前的内容加上新的内容 ,不包含 2 。>>> S‘abpython‘


>>> S = 'abcdef'
>>> S
'abcdef'
>>> S = S[:] + 'python'<span style="white-space:pre">		</span>#没有参数的话直接在最后加上新内容
>>> S
'abcdefpython'

关于切片时,包含不包含 ‘ : ’之前或者之后的坐标元素,貌似有点老生常谈了,以后不再叙述。(包含‘ : ’之前的坐标元素,不包含‘ : ’之后的坐标元素)

如果有步进值的话,就是保留相应的元素,然后再加上新的内容。

>>> S = 'abcdef'
>>> S
'abcdef'
>>> S = S[1:3:2] + 'python'
>>> S
'bpython'
>>> S = 'abcdef'
>>> S
'abcdef'
>>> S = S[1:4:2] + 'python'
>>> S
'bdpython'

4.删除字符串。

由于字符串是不能变得,所以不可能只删除一个元素,只能是清除一个字符串的内容,然后重新赋值。或者是把不需要的元素剔除后再重新组成一个字符串。

给字符串赋空值来清空。此时字符串的存在,输出为空。

>>> S = 'abc'
>>> S
'abc'
>>> S = ''
>>> S
''
>>> S = 'bcd'
>>> S
'bcd'

用del 删除字符串,此时字符串不存在了 ,再次输出会报错。

>>> S = 'abc'
>>> S
'abc'
>>> del S
>>> S
Traceback (most recent call last):
  File "<pyshell#70>", line 1, in <module>
    S
NameError: name 'S' is not defined

试图用 del 删除单个元素,报错。

>>> S = 'abc'
>>> S
'abc'
>>> S[0]
'a'
>>> del S[0]
Traceback (most recent call last):
  File "<pyshell#74>", line 1, in <module>
    del S[0]
TypeError: 'str' object doesn't support item deletion

如果只想剔除其中的一个元素,那么需要先剔除后再重新组成一个字符串。

例如:如果想剔除Hello World 中的W  可以这样做。

>>> S = 'Hello World'
>>> S
'Hello World'
>>> S = S[:6] + S[7:]
>>> S
'Hello orld'

5.字符串 ‘  +  ’  ‘    *’操作。

Easy。

>>> S = S[:6] + S[7:]
>>> S
'Hello orld'
>>> S = 'Hello World'
>>> S
'Hello World'
>>> S + S
'Hello WorldHello World'
>>> S*3
'Hello WorldHello WorldHello World'    

都返回的是副本的操作,不改变原本S的值,如果想改变S,则需要 等号 重新赋值即可。

>>> S = 'Hello World'
>>> S
'Hello World'
>>> S + S
'Hello WorldHello World'
>>> S    <span style="white-space:pre">		</span>#原本S没有改变
'Hello World'
>>> S = S + S   <span style="white-space:pre">	</span>#原本S改变了
>>> S
'Hello WorldHello World'

6.成员操作符。

在序列中可以使用成员操作符,字符串也是如此。

in , not  in。顾名思义,用来判断是否存在某个元素,返回布尔值,True或者False。

>>> S = 'abc'
>>> S
'abc'
>>> 'a' in S
True
>>> 'A' in S
False
>>> 'A' not in S
True
>>> 'ab' in S
True
>>> 'ac' in S
False

以上内容均在Python3.5环境测试可运行,由于本人刚开始接触python且为自学,所以有不对的地方请多多包涵并欢迎指出错误以便更正!

时间: 2024-10-10 17:53:17

Python学习笔记:字符串(str)基本内容的相关文章

python学习笔记字符串(二)

字符串类型(string) 字符串是以单引号'或双引号"括起来的任意文本,比如'abc',"123"等等. 请注意,''或""本身只是一种表示方式,不是字符串的一部分,因此,字符串'abc'只有a,b,c这3个字符.如果'本身也是一个字符,那就可以用""括起来,比如"I'm OK"包含的字符是I,',m,空格,O,K这6个字符. 1.创建字符串 b =   'asdasd' 2.字符串操作 a.重复输出字符串 pri

Python 学习笔记-字符串

今天学习Python对字符串的一些基础处理,感觉对于工作中的自动化脚本发送CLI命令会很有帮助. 首先最重要的是%,标称"转换说明符(conversion specifier)",用于字符串格式化. 左侧放置一个字符串(格式化字符串),而右侧放置希望被格式化的值(待格式化的值) 1 2 3 4 5 left = "Hello,%s good "     # %s 表示期望被格式化的类型 right = "she's"print left % ri

python学习笔记---字符串

字符串 常用的操作方法 .count() .find() .join() .encode() .decode() .endswith() .startswitch('A') .isdigit() .strip() .replace('xx','') .split(',')#以xx来分割字符串,返回的是一个list .splitlines()#以换行符来分割字符串,返回的是一个list #name='li,xixi,ll,yy'# print(name.count('l'))#统计某个字符串出现的

python学习笔记——字符串方法

center:用来在两边填充字符,让字符串居中'the middle is sssssss'.center(20)' The middle is lx ' strip:删除开头结尾空白字符' The middle is lx '.strip()'The middle is lx'names=['lx','dt','xx'] >> name='lx '>> if name in names: print('this is true')...>> if name.strip

Python 学习笔记 -- 字符串格式化输出

1 #如何格式化输出字符串 2 print("{0}是一只{1}".format("我","猫")) 3 print("{a}是一只{b}".format(a="我",b="猫")) 4 print("{0:.1f}{1}".format(3.1415,"GB")) 5 6 #使用%格式化输出 7 print("%c %c %c"

python学习笔记2—python文件类型、变量、数值、字符串、元组、列表、字典

python学习笔记2--python文件类型.变量.数值.字符串.元组.列表.字典 一.Python文件类型 1.源代码 python源代码文件以.py为扩展名,由pyton程序解释,不需要编译 [[email protected] day01]# vim 1.py #!/usr/bin/python        print 'hello world!' [[email protected] day01]# python 1.py hello world! 2.字节代码 Python源码文件

python学习笔记2:字符串

python学习笔记2:字符串 总结:字符串是不可变变量,不能通过下标修改其值 字符串的方法都不会改变字符串原来的值,而是新生成一个字符串 一.3种写法--单引号,双引号,三引号 二.下标和切片 下标:字符串里每个字符所在的位置,也叫索引.strname[n] ,表示strname这个字符串的下标为n对应的字符的值. 切片:取字符串一个下标区间的值. strname[n:m],表示strname这个字符串,下标n到m这个区间内的值,注意n:m取值,顾前不顾后. 三.字符串遍历 in 和not i

《python基础教程(第二版)》学习笔记 字符串(第3章)

<python基础教程(第二版)>学习笔记 字符串(第3章)所有的基本的序列操作(索引,分片,乘法,判断成员资格,求长度,求最大最小值)对字符串也适用.字符串是不可以改变的:%左侧是格式字符串,右侧是需要格式化的值print '%s=%d' % ('x',100) ==> x=100%% 格式字符串中出现 %模板字符串:from string import Templates=Template('$x is 100');  s.substitute(x='ABC');  ==> '

Python学习笔记--未经排版

Python 学习笔记 Python中如何做到Print() 不换行 答:Print("输出内容",end='不换行的分隔内容'),其中end=后面为2个单引号 注:在Python 2.x中,Print "输出内容", 即在输出内容后加一逗号 Python中 is 和 == 的区别 答:Python中的对象包含三要素:id.type.value 其中id用来唯一标识一个对象,type标识对象的类型,value是对象的值 is判断的是a对象是否就是b对象,是通过id来