字符串

作者: 陈卷卷卷卷 | 来源:发表于2018-07-18 20:31 被阅读0次

一.字符串

1.什么是字符串
  • 使用单引号或者双引号括起来的字符串
  • 引号中的单独的符号数字字母等叫做字符
2.转义字符:可以用来表示一些特殊功能或者是特殊意义的字符(通过在固定的字符前面加\)
  • \ 转移字符
  • \\ 输出转移字符 \
(注:转义字符在计算字符串长度时是整个转义字符计算为一个字符)
\n \r \t \f \e \v \oyy \xyy
换行 回车 横向制表 换页 转义 纵向制表 八进制数 十六进制数

代码实现:

str = 'hai'
str1 = 'H'
str2 = '\''
str3 = ('床前明月光,\n疑是地上霜。')
print(str3)

运行结果:

床前明月光,
疑是地上霜

3.Python中的阻止转义
  • 通过R(r)在字符串前面阻止字符串转义,直接能够输出字符串中的原有内容
    代码实现:
#没有R
str4 = '\\'
#有R
str5 = R'\\'
print(str4)
print(str5)

运行结果:

\
\\
4.Python中的字符是Unicode编码

(1)什么是Unicode编码?

  • Unicode编码使用十六位对一个字符进行编码,编码的目的是让字符可以存储到计算机中
  • Unicode编码中包含了ASCII码,它可以表示世界上所有的语言符号
    (2)Unicode编码的使用
    a.获取一个字符的Unicode编码
    b.将Unicode编码转化为字符
    代码实现:
# 将字符转换为Unicode编码(返回十进制)
# ord()
print(bin((ord('王'))),bin((ord('圣'))),bin
# 将Unicode码换换为字符
# chr()
print(chr(0x4eff)

输出结果:

0b111001110001011 0b101011100100011 0b110110100000001
仿
5.字符串比较大小
  • 字符串比较大小的时候,从字符串开始依次往后比较每个字符的大小,直到字符不一样的时候。比较字符的大小,实际上是比较它们的编码的大小

二.获取字符串的字符

Python的字符串实际上是一个有序的序列
1.获取字符串长度:指的是字符串中字符的个数

代码实现:

len()
a='abc'
c=len(a)
print(c)
2.通过下标获取字符串中的每一个字符
  • 字符串中的每一个字符都有一个下标(索引),我们可以通过索引获取固定的值
    代码实现1:
str = 'abc'
print(str[0])
print(str[1])
print(str[2])
str1 = 'dy\nup'
print(str1[4])
注意:
  • 下标的范围:0~字符串长度-1
  • 逆序获取字符
  • 下标长度:-1~-(字符串长度)
  • 索引时,索引不能超过索引范围,否则会报错IndexError
    代码实现2:
# 获取str2中的最后一个字符
print(str1[-1])

运行结果:

3
a
b
c
p
p
3.获取字符串中的制指定范围的字符
格式:变量名[开始下标:结束下标](注:开始下标对应的字符一定在结束下标对应的字符前)获取变量中字符从开始下表到结束下标的所有字符(不包含结束下标所对应的字符)

代码实现:

获取第六个字符到底倒数第一个之前的所有字符
str3 = 'djafjfnjefjjrkjfe'
print(str3[5:-1])

运行结果:

fnjefjjrkjf
  • 如果没有开始下标或者结束下标,则直接从字符开始除索引或者索引至字符串结束
# 省略开始下标
print('省略开始下标')
print(str3[:-1])
# 省略结束下标
print('省略结束下标')
length = len(str3[2:])
print(str3[2:],'所取字符长度为:',length)

运行结果:

省略开始下标
djafjfnjefjjrkjf
省略结束下标
afjfnjefjjrkjfe 所取字符长度为: 15
  • 步进取值
# [开始下标:结束下标:步进]  [1:-1:2]
# 步进为2(没两个取一个)
str4 = str3[2:-1:2]
print(str4)
# 如果步进为负数,则取值时和步进取值规律相反
str5 = str3[2::-1]
print(str5)

运行结果:

ajnejrj
ajd
[Finished in 0.1s]

三.字符串运算符

1."+":拼接字符串
格式:字符串1 + 字符串2

代码实现1:

str = 'hello'
str1 = 'python'
print(str + str1)
注意:在用+进行运算符计算时,+两边必须都是字符串

运行结果:

hellopython
2."*":字符串重复
格式:字符串 * 正整数

代码实现2:

str3 = 'abc' * 2
print(str3)

运行结果:

abcabc
3.in :
格式:字符串1 in 字符串2 :判断字符串1是否在字符串2中,返回值为布尔值

代码实现3

result = 'aac' in 'aghdacjshakj'
print(result)
#字符串必须是完全一样才能判断为True

运行结果:

False
4.not in
格式字符串1 not in 字符串2 :判断字符串1是否不在字符串2中

代码实现4:

result1 = 'aac' in 'aghdacjshakj'
print(result1)

运行结果:

False
5.格式字符串
格式:字符串'%s'%(值),有多个值占位符时,值用逗号隔开

代码实现5:

str4 = 'abc%s123sd' %('c')
print(str4)
# 有多个值占位符时,值用逗号隔开
str5 = 'abc%sajf%sfj' %('7478','47')
print(str5)

运行结果:

abcc123sd
abc7478ajf47fj
6.占位符

%s--->字符串占位符
%d--->整数占位符
%f--->浮点数占位符(%.nf-->保存n位小数的浮点数)
%c--->长度为1的字符串占位符(字符占位符),可以传长度唯一的字符的编码值
代码实现6:

str6 = '-%s-%d-%.1f-%c-' %('chen',12,12.3,'a')
print(str6)

运行结果:

-chen-12-12.3-a-
注意:如果在占位符后面没有添加或者没有使用占位符格式,那么前面添加了占位符的字符串中的占位符也是一个字符串
7.格式化输出

代码实现7:

name = 'chen'
age = 10
print('%s今年年龄是%d' %(name,age))
# 格式化无符号八进制
number = 10
str8 = '%d的八进制数是0o%o' %(number,number)
print(str8)

运行结果:

15的十六进制是0xf
chen今年年龄是10
10的八进制数是0o12

四.字符串的内置函数

调用格式:变量名(变量名).函数()

代码举例:

# 产生学号
number = 9
# 将整数转换为字符串
num_str3 = str(9)
print(num_str3,type(num_str3))
# 调用rjust()函数生成指定长度的字符串,并添加填充字符
num_str3 = num_str3.rjust(3,'0')
# 拼接字符串
num_str3 = 'Python'+ num_str3
print(num_str3)

运行结果:

9 <class 'str'>
Python009

五.分支结构

1.if-else语句
结构:
if:条件语句(结果为True执行的代码块)
****代码块1
else:
****代码块2
执行过程:
  • 先判断条件语句是否为True,如果为True就执行if语句后面对应的一个缩进的所有代码;如果为False,就执行else中的代码块
  • 条件语句:任何有值的表达式,但是一般是布尔值
    代码实现1:
#  练习:用一个变量成绩,如果大于等于60判断是否及格。并打印结果

score = 70
if score>=60:
    print('及格')
else:
    print('不及格')

运行结果:

及格

相关文章

  • Javascript知识点整合

    字符串 单行字符串: ‘字符串’或“字符串” 多行字符串: `多行字符串` 字符串操作: 字符串连接‘+’号 长度...

  • C++基础字符串

    字符串的构造 字符串特性描述 字符操作 字符串赋值 字符串连接 字符串比较 字符串查找 字符串替换 字符串删除 字...

  • iOS中的NSString与NSMutableString

    字符串的创建 字符串读写 字符串的比较 字符串的搜索 字符串截取 字符串替换 字符串与路径 字符串转换 NSMut...

  • iOS NSString用法总结

    字符串属性 字符串截取 字符串比较 字符串搜索 字符串拼接 字符串基本类型转换 字符串分行,分段 字符串列举(按条...

  • php 字符串常见方法汇总

    字符串拼接 字符串检索 字符串截取 字符串替换 字符串大小写转化 字符串转数组 字符串格式化

  • iOS 字符串截取、iOS 字符串替换、iOS 字符串分隔、iO

    iOS之字符串截取、iOS 字符串替换、iOS字符串分隔、iOS之字符串匹配、截取字符串、匹配字符串、分隔字符串 ...

  • PHP中字符串函数库常用函数解析 -- PHP 学习 (十一)

    常用字符串函数分类: 字符串长度, 字符串查找, 字符串大小写转换, 字符串截取, 字符串 ASCII, 字符串加...

  • Kotlin语言(二):字符串类型

    1、字符串定义 2、字符串删除空格 3、字符串比较 4、字符串切割 5、字符串截取 6、字符串替换 7、字符串模板

  • 字符串扩展

    求字符串大小 字符串解码、转换 字符串截取 字符串汉字处理 字符串 Mac地址 字符串进制转换

  • 2020-09-30字符串

    day8-字符串 字符串的操作 in 和 not in字符串1 in 字符串2 - 判断字符串1是否是字符串...

网友评论

      本文标题:字符串

      本文链接:https://www.haomeiwen.com/subject/bzjapftx.html