当前位置:网站首页>学习总结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=' ')
边栏推荐
- Flutter learning - the beginning
- [Software Exam System Architect] Software Architecture Design ③ Domain-Specific Software Architecture (DSSA)
- 2022杭电多校第一场01
- [cesium] element highlighting
- "Recursion" recursion concept and typical examples
- Lecture 4 Backpropagation Essays
- Database experiment five backup and recovery
- Dephi逆向工具Dede导出函数名MAP导入到IDA中
- UVA10827
- A blog clears the Redis technology stack
猜你喜欢

Qt produces 18 frames of Cupid to express his love, is it your Cupid!!!

第5讲 使用pytorch实现线性回归

Flex layout frog game clearance strategy

jvm 三 之堆与栈

WPF中DataContext作用

Flutter真机运行及模拟器运行

Flutter 父子组件如何都能收到点击事件

span标签和p标签的区别
![[Go through 3] Convolution & Image Noise & Edge & Texture](/img/7b/2214020cadf06d9211fd40fb5f1b63.png)
[Go through 3] Convolution & Image Noise & Edge & Texture

Difference between for..in and for..of
随机推荐
Geek卸载工具
第四讲 back propagation 反向传播
"Recursion" recursion concept and typical examples
Pycharm中使用pip安装第三方库安装失败:“Non-zero exit code (2)“的解决方法
结构光三维重建(一)条纹结构光三维重建
RL强化学习总结(一)
jvm three heap and stack
uva1325
human weakness
What field type of MySQL database table has the largest storage length?
What are the characteristics of the interface of the physical layer?What does each contain?
【过一下3】卷积&图像噪音&边缘&纹理
phone call function
机器学习(二) —— 机器学习基础
How does the Flutter TapGestureRecognizer work
2022杭电多校第一场01
第三讲 Gradient Tutorial梯度下降与随机梯度下降
UVA10827
entry point injection
1.3 mysql批量插入数据