当前位置:网站首页>学习总结week2_4
学习总结week2_4
2022-08-05 05:13:00 【非鱼丶丶】
python容器型数据–元组、字符串
一、元组(tuple)
容器型数据:()为标准,多个元素用,隔开
元组是不可变的(不支持增删改);有序的(支持下标操作)
元素没有要求
空元组() – 基本无意义,因为不可变
有一个元素的元组,在表示的时候,唯一元素的后面必须加逗号,
t1 = (10,)
print(type(t1), t1)
在没有歧义的情况下,元组的()可以省略(直接将多个数据用逗号隔开也是元组)
t2 = 10, 20, 30
解包 - 使用多个变量直接获取元组、列表中的多个元素
x, y, z = t2
print(x, y, z)
元组就是不可变的列表
二、字符串(str)
字符串是容器型数据类型(字符串对应的容器只能保存多个文字符号–字符)
‘’ “” 作为容器标准,里面的每个符号就是字符串中的每个元素
字符串不可变,所有可变操作都是在创建一个新的字符串;字符串有序(支持下标)
元素要求:引号中每个符号都是字符串的元素(任何文字符号都可以是字符串的元素),字符串的元素也叫字符
转义字符(符号在字符串中有特殊的功能或特殊意义,没有表示这个符号本身,比如\t), 普通字符(符号在字符串中表示它本身)
多行注释只有在特定的位置上才是注释
str1 = 'aM1,=-%函\t数笑'
print(str1)
1.转义字符
所有转义字符都是由\和另外一个或多个符号一起组合而成
有哪些是固定的转义字符:
\n - 换行
\t - 一个缩进(水平制表符)
\ - 表示一个普通的反斜线字符
’ - 表示一个普通的单引号
" - 表示一个普通的双引号
2.r字符串 - 在字符串引号前加r或者R
如果表示字符串的时候在字符串最前面加r/R,可以让字符串所有的转义字符功能消失
str1 = r'ab\n\\tc'
str2 = R'abd'
print(str1)
3.编码字符(所有的字符都可以表示乘编码字符)
\u四的十六进制数
str1 = '\u4e00'
print(str1)
补充: 16进制数
10进制数(life):由0~9组成的数字 - 直接表示
2进制数:由0,1组成:1011011
0b101101
8进制:由0~7组成:245,777
0o777
16进制数:由09和af(A~F)组成的数字:4e00, 9fa5
0xabc
4.字符编码
计算机存储数据只能存数字(只具备存储数字的能力)
为了能够让计算机保存文字信息,就给每一个文本符号对应一个固定的数字,每次在需要存储文本符号的,就存储这个符号对应的数字
这个数字就叫这个符号的编码值
a -> 97
5.编码表 - 保存每个符号对应的编码值的表
1)ASCII编码表
2)Unicode编码表(python)
Unicode编码表包含ASCII编码表,也叫统一码,万国码,包含世界上所有国家,所有民族的所有语言的符号
中文编码:4e00~9fa5(16进制)
6.编码值的应用
1)chr(编码值)- 获取指定的编码值对应的字符
print(chr(97))
for x in range(0x4e00, 0x9fa5+1):
print(chr(x), end=’ ')
7…ord(字符)
获取指定字符对应的编码值(编码值以10进制的方式返回值)
注意: 字符 - 长度为1的字符串
print(ord('文'))
print(hex(25991)) # hex(数字) - 将数字表示为16进制
c1 = 'm'
print(chr(ord('m') - 32))
编码字符
在字符串中表示字符的方式有两种:直接提供字符,也可以提供一个编码字符
\u4位的16进制编码值
str1 = 'a一'
str2 = '\u0061\u4e00'
print(str1, str2)
比较两个字符串大小,比较的是第一对不相等字符的编码值的大小
print('abc' > 'Zadfwadaw')
8.字符串基本操作
1.查
字符串获取元素和列表获取元素的语法一模一样
message = 'hello'
print(message[0], message[4])
print(message[1:-1])
for x in message:
print(x)
for index in range(len(message)):
print(index, message[index])
for index, item in enumerate(message):
print(index, item)
2.+、*
字符串1 + 字符串2 - 将两个字符串合并,产生一个新的字符串
字符串 * N - 字符串重复N次产生一个新的字符串
str1 = 'abc'
str2 = 'hello'
result = str1 + str2
print(result) # 'abchello'
result = str1 * 3
print(result) # 'abcabcabc'
3.in 和 not in 判断字符串1中是否包含字符串2
# 案例:统计str1中中文的个数
str1 = '换手机hss8223Kks是sjd==222'
count = 0
for x in str1:
if '\u4e00' <= x <= '\u9fa5':
count += 1
print(count)
# 案例:提取字符串中所有的大写字母
str2 = '涉及到MJk230023sjkU293shT=='
# 'MJUT'
for x in str2:
if 'A' <= x <= 'Z':
print(x, end=' ')
边栏推荐
- How does the Flutter TapGestureRecognizer work
- redis事务
- How can Flutter parent and child components receive click events
- 【微信小程序】WXML模板语法-条件渲染
- RDD和DataFrame和Dataset
- 1.3 mysql批量插入数据
- 【过一下14】自习室的一天
- 逆向理论知识4
- Judgment statement _switch and case
- Dephi reverse tool Dede exports function name MAP and imports it into IDA
猜你喜欢
Detailed Explanation of Redis Sentinel Mode Configuration File
使用二维码解决固定资产管理的难题
Difference between for..in and for..of
Dephi reverse tool Dede exports function name MAP and imports it into IDA
Structured Light 3D Reconstruction (2) Line Structured Light 3D Reconstruction
[Student Graduation Project] Design and Implementation of the Website Based on the Web Student Information Management System (13 pages)
NodeJs接收上传文件并自定义保存路径
Develop a highly fault-tolerant distributed system
coppercam primer [6]
How can Flutter parent and child components receive click events
随机推荐
物理层的接口有哪几个方面的特性?各包含些什么内容?
第四讲 反向传播随笔
RDD和DataFrame和Dataset
Wise Force Deleter强制删除工具
coppercam入门手册[6]
Flutter TapGestureRecognizer 如何工作
Qt制作18帧丘比特表白意中人、是你的丘比特嘛!!!
重新审视分布式系统:永远不会有完美的一致性方案……
Structured Light 3D Reconstruction (2) Line Structured Light 3D Reconstruction
【过一下12】整整一星期没记录
Judgment statement _switch and case
vscode+pytorch use experience record (personal record + irregular update)
第四讲 back propagation 反向传播
The role of the range function
"PHP8 Beginner's Guide" A brief introduction to PHP
入口点注入
Flutter learning 2-dart learning
第二讲 Linear Model 线性模型
第三讲 Gradient Tutorial梯度下降与随机梯度下降
[cesium] element highlighting