2018-08-22 day3 学习总结

A认识字符串

01什么是字符串

a.用单引号或者双引号括起来的字符集就是字符串,例:'jiang2323%%42!@字符串',
b.字符串中每个独立的单元,我们叫字符,例如:'abc123'中'a','b'...就是字符

name='xaidc'

poem='鹅鹅鹅,曲项向天歌,白毛浮绿水,红掌拨清波'

02转义字符

说明:Python中没有字符类型,如果要表示字符,就是用一个长度是1的字符串表示
长度:指的是字符串中字符的个数,例如:'abc'——长度是3

a.通过\将一些特殊的字符转换成一个具有特殊功能或者特殊意义的字符,就是转义字符

b.常见的转义字符:\n 换行,\t 制表符(相当于tab键),\

c.在计算字符串长度的时候,转义字符的长度是1

poem='鹅鹅鹅,\n曲项向天歌,\n白毛浮绿水,\n红掌拨清波.'
print (poem)
输出结果
鹅鹅鹅,
曲项向天歌,
白毛浮绿水,
红掌拨清波.
str1='abc\\bcd'
print(str1)
str2='abc\'bcd'
print(str2)
输出结果
abc\bcd
abc'bcd

03Unicode编码

a.Python中字符的编码采用的是Unicode编码

b.将字符转换成指定的数值,这个过程就是编码。(编码的目的方便计算机存储)

c.Unicode编码中包含了ASCII码

将数值转换成对应的符号的过程就是反编码(解码)

# 1).将Unicode码转换为字符:chr(编码)
print(chr(0xA000))
print(chr(0xAC00))
#2).将字符转换成Unicode编码:ord(编码)
print(hex(ord('江')),hex(ord('秀')),hex(ord('成')))
输出结果
ꀀ
가
0x6c5f 0x79c0 0x6210


B获取字符

01怎么获取单个字符

python 中的字符串,可以通过下标(索引)来获取指定位置上的字符:字符串[索引]
说明
a.字符串:可以是字符串值,也可以是字符串变量
b.[]:中括号使固定语法
c.索引:1.从0开始到字符串长度减1;2.-1~-长度(-1对应的是最后一个字符,-2对应的是倒数第二个字符)。
注意:索引不能越界,否则会报错(产生异常)

str1='abcd'
print(str1[0])
print(str1[-1])
输出结果
a
d

02获取部分字符(获取子串)--切片操作

字符串[下标1:下标2]:从下标1开始获取,获取到下标2前的所有的字符
注意:下标1对应的位置,一定要在下标2对应的位置前

str2='hello world!'
print(str2[2:7])
print(str2[-7:-2])
print(str2[7:-2])
输出结果
llo w
 worl
orl

切片是下标可以越界,越界的时候就取临界值

字符串[下标1:下标2:步进]
从下标1获取,每次下标值增加步进值,每增加一次取一个字符,直到取到下标2前为止
注意A.步进如果是正数,那么下标1对应的字符的位置一定要下标2对应的位置的前面;步进是负数,那么下标1对应的位置一定要在下标2对应的位置的后面
B.下标2对应字符是取不到的

str3 ='helloPython'
print(str3[0:5:2])
print(str3[-1:5:-1])
输出结果
hlo
nohty

下标的省略
切片的时候,下标1和下标2是可以省略的

下标1省略:默认从开头开始获取(开头可能是字符串的第一个字符,也可能是字符串的最后一个
下标2省略:从下标1的位置开始获取到结束(结束可能是字符串的最后一个字符,也可能是)

str4 = 'good good study,day day up'
print(str4[:4])
print(str4[:4:-1])
print(str4[1:])
print(str4[3::-1])
print(str4[::-1])
输出结果
good
pu yad yad,yduts doog
ood good study,day day up
doog
pu yad yad,yduts doog doog


C字符串的相关运算

01 + 运算符

字符串1+字符串2
Python支持两个字符串相加,其效果就是将两个字符串拼接在一起产生一个新的字符串
注意:如果+的一个是字符串,那么另外一个也必须是字符串

print('abc'+'123')
输出结果
abc123

02 * 运算符

字符串*整数:字符串重复多次

print('abc'*3)
输出结果
abcabcabc

03所有的比较运算符
str1='abc'
print('abc'==str1)
输出结果
True

比较大小
str1 > str2;str1 < str2
让str1中的每一位的字符,分别和str2中的每一位的字符依次比较。直到不同为止,再看不同字符中谁的编码值大或者小

print('abcd'>'ac')
输出结果
False

04 in 和 not in

**str1 in str2 **:判断str1是否在str2中
结果是 布尔值

print('abc' in 'abcd')
print('f' not in 'python')
输出结果
True
True

05获取字符串长度

1.字符串的长度,指的是字符串中字符的个数
2.len()内置函数

str3='study'
print(len(str3))
输出结果
5

补充:空串

str4=''
print(len(str4))
输出结果
0

06阻止转义

在字符串的最前面添加r/R可以阻止转义

print('a\nb')
print(r'a\nb')
输出结果
a
b
a\nb


D字符串相关的方法

Python 为字符串提供了很多的內建函数
字符串.函数
注意:这些所有的函数的功能都不会影响原来的字符串,而是产生一个新的字符串

01.capitalize()将字符串的第一个字符转换为大写
str1= 'abc'
newstr=str1.capitalize()
print(newstr)
输出结果
Abc

02.center(width,fillchar)

让字符串变成width对应的长度,原内容居中,剩余的部分使用fillchar的值来填充
width-整数;fillchar-任意字符

print('abc'.center(10,'x'))
输出结果
xxxabcxxxx

03.rjust(width,fillchar)

让字符串变成width对应的长度,原内容靠右,剩余的部分使用fillcharf的值来填充


04.count(str)

判断str值在原字符串中出现的次数

print('abcccc'.count('c'))
输出结果
4

05.str1.join(str2)

在str2中的每个字符串之间插入一个str1

print('1'.join('ccc'))
输出结果
c1c1c

06.str.replace(old,new)

将str1中的old全部替换成new

new_str='sahbushjbsaahdsjudhs'.replace('h','=')
print(new_str)
输出结果
sa=bus=jbsaa=dsjud=s

你可能感兴趣的:(2018-08-22 day3 学习总结)