前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python之路-基础数据类型之字符串

Python之路-基础数据类型之字符串

作者头像
py3study
发布2020-01-19 17:20:33
5140
发布2020-01-19 17:20:33
举报
文章被收录于专栏:python3

字符串类型

字符串是不可变的数据类型

索引(下标)

我们在日常生活中会遇到很多类似的情况,例如吃饭排队叫号,在学校时会有学号,工作时会有工号,这些就是一种能保证唯一准确的手段,在计算机中也是一样,它就叫索引,也叫下标,

注意:索引都是从0开始,只有有序的对象才会有索引

切片

只取字符串中某一部分的,就要切片,切片特性:顾头不顾尾

代码语言:javascript
复制
name = 'alisa'
print(name[0:3])
#运行结果:ali 只会取 0 1 2 的下标对应的值

步长

步长是指你取值的间隔长度,例如:

name = 'alisa'

print(name[0:5:2])#隔1个值取一个,若不写,默认1

#运行结果:aia

注意:字符串中可以倒着找

代码语言:javascript
复制
name = 'alisa'
print(name[-1:-5:-1])
#如果你是倒着数,那步长就是负数所以步长是可以控制方向的
#运行结果:asil

字符串的方法

s1 = s.capitalize() 首字母大写

s2 = s.upper() 全部大写

s3 = s.lower() 全部小写

s4 = name.title() 首字母大写,有特殊符号分割的也会大写

s.endswith('x')以什么开始

s.startswith('a') 以什么结尾

s.find('p') 通过元素查找下标,查找到没有的返回-1

s.index('p') 通过元素查找下标,若查找不到就报错

s.format 格式化输出

print('_',join(s))每个s的元素都会加个下划线

s.split('t')以括号里面的来进行分割

s.rstrip() 删除末尾空白

s.lstrip() 删除开头空白

s.strip() 删除两端空格,还会有换行#默认是删除空格\n等,若输入内容,则是清除内容

若想替换所有空格,可以用replace

s.replace('a','s',count) 替换, a 是被 s 替换的,第三个是替换的次数,默认是全部都替换

s.swapcase()括号不用内容,做到大小写转换,把原有字母进行大小写转换

s.isdigit() 判断是不是数字(判断我字符串里的内容是不是纯数字)

s.isalpha() 判断是不是汉字和字母

s.isupper()判断是否是大写

s.islower()判断是否是小写

s.isalnum()判断是不是字母和数字

 字符串的定义

1单引号方式

name = 'alisa'

2双引号方式

name = "alisa"

3三引号方式(三个单引号 和三个双引号都可以)

主要用来换行

''' ?能提笔安天下, 武能上?定乾坤. ?存谋略何?胜, 古今英雄唯是君. '''

4 单双引号混合使用

若字符串内有单引号,那最外层必须用双引号,反之亦然 str1 = "I'm alisa,what's your name?" str2 = '我选的是"A",你呢'

若字符串内既有双引,又有单引号,则外层用三引号 str3 ='''It's "C",I have "A" and "B"。'''

5字符串的拼接

字符串可以进行加法和乘法 加法(只能是字符串之间进行,不能是不同类型的)

代码语言:javascript
复制
name = 'alisa'
name1 = 'hello,'
print(name1 + name)
运行结果:hello,alisa

乘法(字符串与数字相乘):把原来的字符串进行了10次展示

代码语言:javascript
复制
name = 'alisa'
print(name*10)
运行结果:
alisaalisaalisaalisaalisaalisaalisaalisaalisaalisa

符串的格式化

格式化输出常用参数:

%s:非常强大,可以接收任意类型的数据并转化成str类型输出。

%c:整数:将数字转换成其ASCII/unicode对应的值,(py27则只支持0-255)。

%o:将整数转换成八进制表示。

%x:将整数转换成十六进制表示。

%d:将整数、浮点数转换成 十 进制表示。

%e:将整数、浮点数转换成科学计数法(小写e)。

%E:将整数、浮点数转换成科学计数法(大写E)。

%f: 将整数、浮点数转换成浮点数表示(默认保留小数点后6位)。

%g:自动调整将整数、浮点数转换成 浮点型或科学计数法表示(超过6位数用科学计数 法,如果是科学计数则是e;)。

%G:自动调整将整数、浮点数转换成 浮点型或科学计数法表示(超过6位数用科学计数 法,如果是科学计数则是E;)。

%:当字符串中存在格式化标志时,需要用 %%表示一个百分号 注:Python中百分号格式化是不存在自动将整数转换成二进制表示的方式。

示例1

代码语言:javascript
复制
name = input("请输入姓名")
age = input("请输入年龄")
print('你认识的那个%s,今天是%s了吗'%(name,age))

示例2

代码语言:javascript
复制
name = input("请输入姓名")
age = input("请输入年龄")
print(f'你认识的那个{name},今天是{age}了吗')

 示例3

代码语言:javascript
复制
name = input("请输入姓名")
age = input("请输入年龄")
print(("你认识的那个{},今天是{}了吗").format(name, age))

字符串编码

ascii 美国 256 没有中文 

一个字节  8位   

gbk 中国  

中文 2字节  16位

英文 1字节  8位

unicode 万国码 

2个字节     16位

4个字节     32位

utf-8 可变编码   

英文 1字节  8位

欧洲 2字节  16位

亚洲 3字节  24位

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/05/02 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 字符串类型
    • 索引(下标)
      • 切片
        • 步长
        • 字符串的方法
        •  字符串的定义
        • 符串的格式化
        • 字符串编码
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档