字符串_月隐学python第7课
一、字符串
字符串就是由若干个不同的unicode字符组成的不可变序列
1 .字符串创建
2.获取字符
因为是不可变序列,所以不能修改单个字符; 凡是修改字符串的操作都产生新串
3.字符串转义
- 常⻅转义字符
- 原生字符
如果在字符串中不把\当做转移字符,可以使⽤
4.序列通⽤操作
4 字符串常用函数
4.1 字符串查找和替换
str1 = 'a fox jumped over the fence'
4.2 字符串分隔和组合
4.3 字符串判断
4. 4字符串转换
4.5 其它方法
5. 字符串格式化
- 用%格式化
- 用format格式化
⼆、字节
在python3中最重要的特性是对文本和⼆进制数据做了更加清晰的区分,⽂本总是Unicode,由字符类型表示,⽽二进制数据则由byte类型表示, python3不会以任意隐式⽅式混用字节型和字符型,也因此在python3中不能拼接字符串和字节包(python2中可以,会自动进行转换),也不能在字节包中搜索字符串,也不能将字符串传⼊参数为字节包的函数。Bytes 对象是由单个字节作为基本元素(8位,取值范围 0-255)组成的序列,为不可变对象。 bytes对象只负责以二进制字节序列的形式记录所需记录的对象,⾄于该对象到底表示什么(⽐如到底是什么字符)则由相应的编码格式解码所决定。Python3中, bytes通常用于⽹络数据传输、⼆进制图片和⽂件的保存等等。可以通过调用bytes()⽣成bytes实例,其值形式为 b'xxxxx',其中 'xxxxx' 为⼀⾄多个转义的十六进制字符串(单个 x 的形式为: \x12,其中\x为小写的十六进制转义字符, 12为二位十六进制数)组成的序列,每个十六进制数代表一个字节(八位二进制数,取值范围0-255),对于同一个字符串如果采用不同的编码方式生成bytes对象,就会形成不不同的值
1 创建字节
2 字符串和字节的转换
作业
一、填空
1.已知s2 = ‘123’,则: s2 * 3 = _123123123_; s2 + str(456) = _123456__________;
2.已知s1 = ‘123456789’。则: s1[:3] = _123_; s1[-5:] = _56789_; s1[::2]=_13579_; s1[::-3] = _963_;
int(s1[3:5]) + int(s1[-5:3:-1]) = _50_______。
3.已知s1 = “this is a test of Python”;统计字符串中s出现的次数: _print(s1.count("s"))__;
取出⼦串”test”的表达式: _print(s1[10:15])__; 获取s1的反序字符串:
__print(s1[::-1])____; 将⼦串”test”替换为”exam”: __print(s1.replace("test", "exam"))___________
4.已知字符串 a = “aAsmr3idd4bgs7Dlsf9eAF”,要求如下:将a字符串的⼤大改为⼩写,⼩写改为⼤写:_print(a.swapcase())____;转为⼩写字符串:_print(a.lower())____________。
5.已知x="abc",y="def",z=["d","e","f"], 则x.join(y)= __dabceabcf______________;
x.join(z) = __dabceabcf________________________。
6.把s1=”你好”,编码为字节流字符串: ___print(s1.encode('utf-8'))______________
7.已知字符串: s2 = ‘ bj1902 ’,去除s2左边的空格: _print(s2.lstrip())__________;去除s2右
边的空格: _print(s2.rstrip())___________;去除s2两边的空格: __print(s2.strip())____________;
8.定义变量s=‘abcde', 写出下列代码运行的结果
s.upper() ___ABCDE_____________
s[2::-1] ____cba____________
s.isdigit() __False______________
s * 2 __abcdeabcde______________
'*'.join(list(s)[:3]) ____a*b*c____________
二、编程
初级
1. 输⼊一个字符串,自⼰统计该字符串有多少个字符,不允许⽤len函数
2.任给一个字符串,请验证是否是⼿机号,手机号为11位数字,开头三位必须是130,151,186
- 使用列表存储130,151,186;使用in判断
- 使⽤切⽚左取3位
3.将字符串’1234567890’转换成‘ 1,234,567,890’输出,每3位⽤用逗号隔开。
4.输⼊两个字符串,从第一字符串中删除第⼆个字符串中所有的字符
5.任意输⼊一段文字,统计有多少个单词(用空格隔开)、多少个数字、多少字⺟、多少空格。
6. 已知字符串 a = "aAsmr3idd4bgs7Dlsf9eAF",要求如下:
a.将a字符串的数字取出,并输出成一个新的字符串
b.请统计a字符串出现的每个字母的出现次数(忽略大小写, a与A是同一个字
母),并输出成一个字典。 例例 {'a':4,'b':2}
c.输出a字符串出现频率最高的字母
d.请判断 'boy'里出现的每一个字母,是否都出现在a字符串里。如果出现,则输出True,否则,则输 出False
【中级】
1.input函数每次只能输入一个字符串,请实现如下输入格式: 1,20,30 。然后将获得的字符串分割,得到:三个整数: 1 20 30,然后赋值给三个变量。
2.求字符串最后一个单词的长度,单词之间用空格分割。
3.输⼊一个字符串,压缩字符串如下aabbbccccd变成a2b3c4d1
4.给定一个句子(只包含字母和空格),将句子中的单词位置反转,单词用空格分割, 单词之间只有一个空格,前后没有空格。例例如:
“hello xiao mi”-> “mi xiao hello”
5.将s = “ajldjlajfdljfddd",去重并从小到大排序输出"adfjl"
6.使用密码表加密
密码表加密是一种十分常用的密码加密方法,加密的原理是根据明文和密码表,加密形成密文,根据密文和密码表解密,读出明文。密码表可以是如下表所示:
⾃己设计密码表,任意输⼊一个字符串,然后显示其密⽂。
字符串_月隐学python第7课相关推荐
- python编程基础_月隐学python第2课
python编程基础_月隐学python第2课 学习目标 掌握变量的输入和输出 掌握数据类型的基本概念 掌握算数运算 1.变量的输入和输出 1.1 变量输入 使用input输入 input用于输入数据 ...
- 字典与集合_月隐学python第8课
一.字典 字典属于无序列,元素存放无序,是通过哈希方式进行数据存取的,字典是一个可变容器,字典中保存一个的键值对: key : value.我们通过key来获取对应的值,很类似我们的汉语字典. 字典中 ...
- mysql高级之子查询,多表查询,外连接,集合操作,内部函数与数据控制_月隐学python第24课
目录 ⼀.⾼级 1.1 ⼦查询 1.2 多表查询 1.3 外连接 1.4 集合操作 1.5 内部函数 ⼆.数据控制 2.1 事务 2.2 授权管理 ⼀.⾼级 1.1 ⼦查询 ⼦查询嵌⼊到其他查询语句中 ...
- mysql基础_月隐学python第22课
目录 ⼀.数据库基本概念 常⻅的数据库: MySQL简介 mysql的安装 linux下 windows下安装 ⼆. SQL 三.操作数据库 四.数据库表 例子: 五.数据类型 数值型 字符型 ⽇期 ...
- 正则表达式_月隐学python第20课
目录 1.为什么使⽤正则表达式 2.正则表达式的组成 3.正则常⽤⽅法 3.1 re.match() 3.2 re.search() 3.3 re.findall() 3.4 re.sp ...
- 继承_月隐学python第16课
目录 1.封装 1.1 属性私有化 1.2 属性装饰器 1.3 成员⽅法私有化 2.继承 2.1 单继承 2.2 多继承(理解.了解) 3.类成员 作业 初级 中级 ⾯向对象三⼤特征:封装.继承.多态 ...
- 类和对象_月隐学python第15课
目录 1 ⾯向对象的思想 2. 类和对象 2.1 类和对象的概念 2.2 类的定义 2.3 成员⽅法 2.4 对象的创建 2.5 成员属性 3 构造和析构 3.1 构造⽅法 3.2 析构⽅法 3.3 ...
- 内建模块_月隐学python第14课
目录 1 ⽇期时间模块 1.1 time时间模块 1.2 datetime⽇期模块 1.3 calendar⽇历模块 2 第三⽅模块 1 ⽇期时间模块 datetime:⽇期 time :时间 cal ...
- 函数进阶_月隐学python第11课
目录 1.函数类型 2. 匿名函数 3.传入函数(理解) 4.闭包 5.偏函数 6.变量的作用域 6.1 变量作用域的分类 6.2 变量作⽤域查找规则 6.3 全局变量和局部变量 6.4 global ...
最新文章
- cocos2dx3.x使用cocostudio触摸事件不响应的奇葩问题
- ansible playbook中使用迭代with_items案例
- java ee maven_真正释放Maven和Java EE的强大功能
- 北大青鸟消防控制器组网_北大青鸟JBF-61S20防火门监控器控制器接线示意图
- Orleans 初接触(一) 入门例子
- 拼多多开始卖车了!3.49万秒杀五菱宏光...
- 关于JSTL的简单说明
- 监控某个dll被修改_浅谈动力环境监控系统技术标准
- FastStone Capture 下载
- 成都理工计算机考研很难吗,成都理工大学考研难吗?一般要什么水平才可以进入?...
- 【python 保存生成的图片 (plt;opencv;PIL)】
- 怎样在html中插入ppt,PPT怎么插入网页中的视频
- ACID--事务四大特性
- 3.NLP中文分词技术
- 为什么优秀的程序员bug很少?因为他们……
- 51单片机之蜂鸣器弹钢琴
- Keychron K7 Pro 轻薄矮轴机械键盘开箱体验
- 宇宙飞机(space plane)
- ionic3 使用QR Scaner 扫描
- 计算机网络基本知识(四):网络传输介质
热门文章
- year range in CRM Fiori Sales Pipeline
- our reuse project in HCP
- when is SAP UI5 where is title 'Scaffold in Shell integration test' defined
- SAP HANA数据库里对中文字符串排序的实现
- open a BP will trigger text load - COM_TEXT_MAINTAIN - READ_TEXT
- How to resolve ATC error message Package Violation (Error) - Missing Use Access (USEM)
- 另一种ABAP解析XML file的方式
- Interactive Report UI - IFrame
- java js隐藏_Javascript匿名函数是否仍然可见? (使用Java applet,这是一种隐藏JS代码的方法)...
- mysql数据库主要负责存储_MySQL默认数据库简介