day03-python中的字符串

01-认识字符串

1、字符串:用单引号或者双引号括起来的字符集。例如:'ljjj$345是'。
字符:字符串中的每个独立的单元我们叫字符。

2、转义字符:通过\将一些特殊的字符转换成具有特殊功能的字符。常见的转义字符有:\n(换行)、\t(tab制表符)、\(反斜杠\)、'(单引号)、"(双引号)等。转义字符的长度为1。

3、Unicode编码:python中字符的编码采用的是Unicode编码。Unicode使用两个字节对一个字符进行编码。Unicode编码包含ASCII码。

编码:将字符转换成指定的数值,以便计算机做存储操作。解码:将数值转换成对应的符号。

在这里,涉及到两个函数:1)、将Unicode码转换成字符:chr();2)、将字符转换成Unicode编码:ord();
例子:

# 1)、将Unicode码转换成字符:chr()
print(chr(0xA000))
print(chr(0xa001))
print(chr(0x4e00))

#2)、将字符转换成Unicode编码:ord()
print(hex(ord('哈')),hex(ord('喽')))

结果:


字符与编码相互转换.png

02-获取字符

1、获取单个字符

python中的字符串,可以通过下标来获取指定位置上的字符;

格式:字符串[下标]
注意:字符串可以是字符串值,也可以是字符串变量;下标可以是从0开始到字符串长度减1;也可以是-1到-长度(-1就是对应的最后一个字符,以此类推,-长度对应的就是第一个字符);最后,索引不能越界,否则会报错。

例子:

str1='abcd'
print(str1[0])
#print(str[4])错误
print(str[-4])
print(str[-1])

结果:


获取单个字符.png

2、获取部分字符(子串)--切片
格式:字符串[下标1:下标2]:从下标1开始获取到下标2前的所有的字符。
例子:

str2='hello world'
print(str2[0:4])
print(str2[2:-1])
print('abcdabcd'[0:8])#切片时,下标可以越界,越界时就取临界值。

结果:


切片.png

格式2:字符串[下标1:下标2:步进]
解释:从下标1开始获取,每次下标值增加步进值,每增加一次获取一个字符,直到取到下标2前为止。
(如果步进是正数,那么下标1对应的字符的位置一定要在下标2对应的位置的前面;如果是负数,那么下标1的位置在下标2的后面;)
例子:

str2='helloworld!'
print(str3[0:5:3])
print(str3[0:5])
print(str3[-1:5:-1])

带步进的字符串获取.png

下标的省略

例子:

#切片时,下标1和下标2是可以省略的。
#下标1省略:默认从开头开始获取(开头可能是字符串的第一个字符,也可能是最后一个字符。)
str4='good good study,day day up'
print(str4[:4])
print(str4[:4:-1])
#下标2省略:从下标1位置开始获取,获取到结束(结束可能是字符串的最后一个字符,也可能是第一个字符)
print(str4[1:])
print(str4[3::-1])
print(str4[::-1])

结果:


下标省略.png

03-字符串相关运算

1、+运算:python中支持两个字符串相加,其结果就是将两个字符串进行拼接,最后产生一个新的字符串。

2、*运算:
格式:字符串*整数
就是将整数个字符串拼接在一起产生一个新的字符串。

3、支持所有的比较运算符(==、!=、>、<)
注意:在比较大小时,比较的是两个字符串中每一位字符的编码值,直到不同为止。

4、in和not in:判断字符串之间是否包含。结果为bool值。

5、获取字符串长度
使用len()内置函数来获取。空串('')的长度为0;

6、阻止转义
在字符串的最前面添加r或者R可以阻止转义。


04-字符串中的相关函数方法

python中为字符串提供了很多内建函数。
调用方式:字符串.函数名()
注意:函数的功能不会影响原来的字符串,而是产生一个新的字符串。

print('abCd'.capitalize())#将字符串中的第一个字符转换成大写,如果后面有大写,将其转换成小写;
print('abc'.center(10,'0'))#产生一个长度为10,字符串abc居中,其余以0来填充的字符串;
print('abaa'.count('a'))#返回a在字符串abaa中出现的次数;
print('abc'.endswith('c'))#检查字符串是否已字符c结尾.返回true或者false
print('abc'.find('abd'))#检查是否包含字符串,返回0或-1
print('abc12'.isalnum())#如果字符串至少有一个字符并且所有字符都是字符或数字则返回 True,否则返回 False
print('abc1'.isdigit())#字符串是否只包含数字
print('asfD34'.islower())#字符串中的字母是否都是小写
print('bs23'.isnumeric())#字符串中是否只有数字
print('  \n'.isspace())#字符串中是否只有空白
print('Tdd Fsss'.istitle())#字符串中所有的单词的首字母是否大写,其余为小写
print('DDD34'.isupper())#字符串中的字母都为大写字母
print(len('dda'))#返回字符串长度
print('1'.ljust(3,'0'))#左对齐
print('DDD'.lower())#将大写转换成小写
print(max('bdc'))#返回字符串中最大的字母
print(min('bda'))#返回字符串中最小的字母
print('1'.rjust(3,'0'))#右对齐
print('  fds  a   '.rstrip())#删除末尾的空白
print('  fds  a   '.lstrip())#删除开头的空白
print('  fds  a   '.strip())#删除开头和结尾的空白
print('world'.title())#将字符串标题化就是单词首字母大写
print('worldD'.upper())#将小写字母转换成大写

05-字符串格式化

python支持格式化字符串的输出。
基本用法:将一个值插入到一个有字符串格式符%s的字符串中。
例子

print('我的名字是%s今年%d岁'%('小李',20))

结果:


格式化字符串.png

python中常用的字符串格式化符号有:
%c-----格式化字符及其ASCII码
%s-----格式化字符串
%d-----格式化整数
%u-----格式化无符号整型
%o-----格式化无符号八进制数
%x-----格式化无符号十六进制数
%X-----格式化无符号十六进制数(大写)
%f-----格式化浮点数字
%e-----格式化科学计数法的浮点数

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,692评论 6 501
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,482评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,995评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,223评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,245评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,208评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,091评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,929评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,346评论 1 311
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,570评论 2 333
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,739评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,437评论 5 344
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,037评论 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,677评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,833评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,760评论 2 369
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,647评论 2 354

推荐阅读更多精彩内容

  • 一、字符串 1.字符串的基本知识 要点: 使用单/双引号括起来的字符集就是字符串如:'56''sdff''#$#d...
    HavenYoung阅读 641评论 0 6
  • 1.字符串 字符串:使用单引号或双引号括起来的字符集就是字符串,引号中单独的符号、数字、字母、空格等叫字符。 例:...
    FansYuercero阅读 411评论 0 7
  • 1.什么是字符串 a.使用单引号或者双引号括起来的字符集就是字符串。 b.引号中单独的符号、数字、字母等叫字符 c...
    PIECE_MAN阅读 1,511评论 0 6
  • 1.什么是字符串 a.使用单引号或者或者双引号括起来的字符集就是字符串b.引号中单独的符号、数字、字母等叫字符c....
    小先生_8bfd阅读 422评论 0 3
  • 我愿化作一棵树, 长在你必经过的路旁. 阳光下, 满心欢喜的让小花开满枝桠, 也许不够美, 但朵朵都是我对你的期盼...
    止语静默阅读 930评论 1 3