一、字符串

字符串就是由若干个不同的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课相关推荐

  1. python编程基础_月隐学python第2课

    python编程基础_月隐学python第2课 学习目标 掌握变量的输入和输出 掌握数据类型的基本概念 掌握算数运算 1.变量的输入和输出 1.1 变量输入 使用input输入 input用于输入数据 ...

  2. 字典与集合_月隐学python第8课

    一.字典 字典属于无序列,元素存放无序,是通过哈希方式进行数据存取的,字典是一个可变容器,字典中保存一个的键值对: key : value.我们通过key来获取对应的值,很类似我们的汉语字典. 字典中 ...

  3. mysql高级之子查询,多表查询,外连接,集合操作,内部函数与数据控制_月隐学python第24课

    目录 ⼀.⾼级 1.1 ⼦查询 1.2 多表查询 1.3 外连接 1.4 集合操作 1.5 内部函数 ⼆.数据控制 2.1 事务 2.2 授权管理 ⼀.⾼级 1.1 ⼦查询 ⼦查询嵌⼊到其他查询语句中 ...

  4. mysql基础_月隐学python第22课

    目录 ⼀.数据库基本概念 常⻅的数据库: MySQL简介 mysql的安装 linux下 windows下安装 ⼆. SQL 三.操作数据库 四.数据库表 例子: 五.数据类型 数值型 字符型​ ⽇期 ...

  5. 正则表达式_月隐学python第20课

    目录 1.为什么使⽤正则表达式 2.正则表达式的组成 3.正则常⽤⽅法 3.1  re.match()​ 3.2  re.search()​ 3.3  re.findall()​ 3.4  re.sp ...

  6. 继承_月隐学python第16课

    目录 1.封装 1.1 属性私有化 1.2 属性装饰器 1.3 成员⽅法私有化 2.继承 2.1 单继承 2.2 多继承(理解.了解) 3.类成员 作业 初级 中级 ⾯向对象三⼤特征:封装.继承.多态 ...

  7. 类和对象_月隐学python第15课

    目录 1 ⾯向对象的思想 2. 类和对象 2.1 类和对象的概念 2.2 类的定义​ 2.3 成员⽅法 2.4 对象的创建 2.5 成员属性 3 构造和析构 3.1 构造⽅法 3.2 析构⽅法 3.3 ...

  8. 内建模块_月隐学python第14课

    目录 1 ⽇期时间模块 1.1 time时间模块 1.2 datetime⽇期模块 1.3 calendar⽇历模块 2 第三⽅模块 1 ⽇期时间模块 datetime:⽇期 time :时间 cal ...

  9. 函数进阶_月隐学python第11课

    目录 1.函数类型 2. 匿名函数 3.传入函数(理解) 4.闭包 5.偏函数 6.变量的作用域 6.1 变量作用域的分类 6.2 变量作⽤域查找规则 6.3 全局变量和局部变量 6.4 global ...

最新文章

  1. cocos2dx3.x使用cocostudio触摸事件不响应的奇葩问题
  2. ansible playbook中使用迭代with_items案例
  3. java ee maven_真正释放Maven和Java EE的强大功能
  4. 北大青鸟消防控制器组网_北大青鸟JBF-61S20防火门监控器控制器接线示意图
  5. Orleans 初接触(一) 入门例子
  6. 拼多多开始卖车了!3.49万秒杀五菱宏光...
  7. 关于JSTL的简单说明
  8. 监控某个dll被修改_浅谈动力环境监控系统技术标准
  9. FastStone Capture 下载
  10. 成都理工计算机考研很难吗,成都理工大学考研难吗?一般要什么水平才可以进入?...
  11. 【python 保存生成的图片 (plt;opencv;PIL)】
  12. 怎样在html中插入ppt,PPT怎么插入网页中的视频
  13. ACID--事务四大特性
  14. 3.NLP中文分词技术
  15. 为什么优秀的程序员bug很少?因为他们……
  16. 51单片机之蜂鸣器弹钢琴
  17. Keychron K7 Pro 轻薄矮轴机械键盘开箱体验
  18. 宇宙飞机(space plane)
  19. ionic3 使用QR Scaner 扫描
  20. 计算机网络基本知识(四):网络传输介质

热门文章

  1. year range in CRM Fiori Sales Pipeline
  2. our reuse project in HCP
  3. when is SAP UI5 where is title 'Scaffold in Shell integration test' defined
  4. SAP HANA数据库里对中文字符串排序的实现
  5. open a BP will trigger text load - COM_TEXT_MAINTAIN - READ_TEXT
  6. How to resolve ATC error message Package Violation (Error) - Missing Use Access (USEM)
  7. 另一种ABAP解析XML file的方式
  8. Interactive Report UI - IFrame
  9. java js隐藏_Javascript匿名函数是否仍然可见? (使用Java applet,这是一种隐藏JS代码的方法)...
  10. mysql数据库主要负责存储_MySQL默认数据库简介