Python自学笔记第一练————内置数据类型之字符串

Python自学笔记第一练————内置数据类型之字符串(上)

                       —————**鱼系の少年的学习笔记 python 篇**

字符串

定义

字符串分为单行字符串和多行字符串。
其中单行字符串可以由一对双引号("  ")或一对单引号('  ')表示,单引号和双引号等效。
多行字符串可由一对三单引号('''  ''')或一对三双引号("""  """)表示,三单引号和三双引号也等效。

例如:

s1='My Python'
s2="My Python"
s3='521'

这三个量都是创建的字符串,其中s3虽然里面的值是521这个数字,但是我们用引号将其括住后它就是一个字符串了。

>>> s1='''
... What's 
... your 
... name?
...  '''
>>> s1
"\nWhat's \nyour \nname?\n "

特点

1、有序的序列
2、它是一种不可变的数据类型。

字符串的的单引号(’ ')或 双引号(" ")要成对的出现使用。

如果在复杂语句中需要同时用到单引号(’ ')和 双引号(" ") 的时候
例如:

>>> s1='What's your name ?'
  File "<stdin>", line 1
    s1='What's your name ?'
             ^
SyntaxError: invalid syntax
>>> 

这时使用了一对单引号(’ ')和一个单引号( ’ )会发现这个字符串会报错,前面说过了单引号需要成对出现使用,而程序中的问句必须要使用一个单引号来构建,那这时候要怎么办呢?

>>> s1="What's your name ?"
>>> s1
"What's your name ?"

这时通过使用双引号(" “)来构建字符串,就算里面包含一个单引号( ’ )
但是也不影响字符串的组成,因为通过使用成对出现的单引号(’ ')或 双引号(” ")创建的量就能组成字符串。

除了这个方法还有可以使用( \ )转义字符。

>>> s1='What\'s your name ?'
>>> s1
"What's your name ?"

在字符中使用特殊字符的时候,就可以通过使用 \ 转义字符来改变它本身的含义。
转义字符串

序列的基本操作

字符串是序列的一种,下列操作是属于序列的一些基本使用,这些操作不仅可以运用在字符串中,也可以在其他序列类型中使用。

序列的连接(字符串的连接)

>>> s1="What's"
>>> s2='your'
>>> s3='name?'
>>> s1+s2+s3
"What'syourname?"

字符串的加法运算将多个字符串组合到一起。

序列的重复输出(字符串的重复输出)

>>> s1='Hello'
>>> s1*3
'HelloHelloHello'

字符串的乘法运算str*n(int),就是将字符串str本身重复显示整数n遍。

成员操作符(in,not in)

>>> s1='Hello'
>>> 'e'in s1
True
>>> 'h'in s1
False
>>> 'H'not in s1
False
>>> 'H'in s1
True

in :如果字符串中包含给定的字符返回 True;否则就返回 False。
(‘n’ in str ,如果str这个字符串里面
包含
这个字符’n’,就返回 True;不包含就返回False)

not in: 如果字符串中不包含给定的字符返回 True,否则就返回False。
(‘n’ in str ,如果str这个字符串里面不包含这个字符’n’,就返回 True;不包含就返回False)

比较量 n 和 str 都是字符串,其中是判断 str 这个字符串是否包含字符 n,存在返回值 True 或 False 。满足条件则返回 True ,不满足则返回 False 。
其中字符 n 可以由多个字符组成,不一定为一个字符,可以是字符串与字符串之间的比较

计算长度len(s)

>>> s1='Hello'
>>> len(s1)
5

是计算字符串的长度

字符串的索引操作 str[n]

>>> s1="What's your name ?"
>>> s1[0]
'W'
>>> s1[1]
'h'
>>> s1[-1]
'?'
>>> s1[8]
'o'
>>> s1[-10]
'o'

索引就是在有序的字符串根据它本身的序号来获取我们需要的值。

其中 str 是字符串本身,而中括号**[ n ]** 中的 n 代表在这个字符串中的排列序号,字符串的排列 从左到右 计数是从 0 开始的,所以 s1[0]='w’

而排序还可以 从右往左 开始,最右边为 -1 开始,所以 s1[-1]=’?'

由此可以看出来一组字符串可以有两组排序方式分别是,从左到右从右到左 ,所以每个字符都有两个序号可以表示。

字符串的切片操作 str[ : : ]

>>> s1="What's your name ?"
>>> s1[1:3]
'ha'
>>> s1[3:10]
"t's you"
>>> s1[-1:-10]
''
>>> s1[ : :-1]
"? eman ruoy s'tahW"
>>> s1[-1:-10:-1]
'? eman ru'
>>> s1[ : :1]
"What's your name ?"
>>> s1[ : :2]
"Wa' ornm "
>>> s1[ : :-2]
'?ea uysth'

切片是在索引的基础上将字符串中我们需要的字符来获取出来,其中的字符已经不局限于一个字符的获取了,而是字符片段的获取。
str [ a : b : c ] (a,b,c为整数)ab 是定义我们选择的字符片段的范围,获取的范围是a <= str[a:b] <b,说明是从 第a位 开始截取到第b位之前截止。
str [ a : b : c ] 则是在字符串 strab 之前一位的范围内,以 c 个字符单位截取,不写 c 默认为1,在索引中我们有说明字符串的排序是有两种的,所以要注意 c 的正负,这决定截取的顺序。
(c为正则是从左到右截取,c为负值则是从右到左截取)

python的字符串内建函数

字符串方法是从python1.6到2.0慢慢加进来的——它们也被加到了Jython中。

这些方法实现了string模块的大部分方法,如下表所示列出了目前字符串内建支持的方法,所有的方法都包含了对Unicode的支持,有一些甚至是专门用于Unicode的。
在这里插入图片描述
内建函数详解我将会在下一练中单独介绍,下面的链接是菜鸟对python字符串内建函数的详解。
python的字符串内建函数详解

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值