Python笔记——容器类型

容器类型

字符串 str

定义:由一系列字符组成的不可变序列容器,存储的是字符的编码值。

编码
  1. 字节byte:计算机最小存储单位,等于8 位bit.
  2. 字符:单个的数字,文字与符号。
  3. 字符集(码表):存储字符与二进制序列的对应关系。
  4. 编码:将字符转换为对应的二进制序列的过程。
  5. 解码:将二进制序列转换为对应的字符的过程。
  6. 编码方式:
  • ASCII编码:包含英文、数字等字符,每个字符1个字节。
  • GBK编码:兼容ASCII编码,包含21003个中文;英文1个字节,汉字2个字节。
  • Unicode字符集:国际统一编码,旧字符集每个字符2字节,新字符集4字节。
  • UTF-8编码:Unicode的存储与传输方式,英文1字节,中文3字节。
  1. 相关函数
    1. ord(字符串):返回该字符串的Unicode码。
    2. chr(整数):返回该整数对应的字符串。
 # 1.在终端中获取一个字符串,打印出每个文字的编码值
str01 = input("请输入一个字符串:")
for item in str01:
    print(ord(item))

# 2.在终端中,循环录入编码值,打印每个文字
# 要求:如果录入空字符串则程序退出
while True:
    num = input("请输入编码值:")
    if num == "":
        break
    num = int(num)
    print(chr(num))
字面值
单引和双引号的区别
  1. 单引号内的双引号不算结束符
  2. 双引号内的单引号不算结束符
三引号作用
  1. 换行会自动转换为换行符\n
  2. 三引号内可以包含单引号和双引号
  3. 作为文档字符串
#    双引号
name01 = "小白"
#    单引号
name02 = '小白'
#    三引号(可见即所得)
name03 = '''小白'''
name04 = """小白"""

message = '我叫"小白".'
message = "我叫'小白'."
message = """我叫'小"白"啊'."""#三引号内可以包含单引号和双引号
转义字符
  1. 改变字符的原始含义。
    \’ \” \””” \n \ \t \0 空字符
  2. 原始字符串:取消转义。
    a = r”C:\newfile\test.py”
#	转义字符:改变字符的原始含义。
# \"  \'   \\
message = "我叫\"齐天大圣\"."
url = "C:\\arogram Files\\bntel\cedia SDK"
# 原始字符串:没有转义字符
url = r"C:\arogram Files\bntel\cedia SDK"
print(url)

# \t 水平制表格
print("我爱\t编程.")
# \n 换行
print("我爱\n编程.")
字符串格式化
  1. 定义:
    生成一定格式的字符串。
  2. 语法:
    字符串%(变量)
    “我的名字是%s,年龄是%d” % (name, age)
  3. 类型码:
    %s 字符串 %d整数 %f 浮点数
# 字符串格式化
name = "zza"
age = 20
score = 66.66
print("我的名字是%s,年龄是%d,成绩是%.3f" % (name, age, score))
#%.f 小数点后数字为保留多少位小数 如:1.2345    %.2f -->1.23

day = 5
hour = 4
minute = 30
# print(day + "天" + hour + "小时" + minute + "分钟")
print("%d天%d小时%d分钟"%(day,hour,minute))

通用操作

数学运算符
  1. +:用于拼接两个容器
  2. +=:用原容器与右侧容器拼接,并重新绑定变量
  3. *:重复生成容器元素
  4. *=:用原容器生成重复元素, 并重新绑定变量
  5. < <= > >= == !=:依次比较两个容器中元素,一但不同则返回比较结果。
# 算数运算符
# -- +容器元素拼接
name01 = "小"
name01 += "白"
print(name)# 小白
# -- *容器元素重复多次
name02 = "小白"
name02 *= 2
print(name02)# 小白小白

# 依次比较两个容器中元素,一但不同则返回比较结果。
print("小白" > "大白")
成员运算符
  1. 语法:
    数据 in 序列
    数据 not in 序列
  2. 作用:
    如果在指定的序列中找到值,返回bool类型。
# 成员运算 in   not in
print("我爱" in "我爱你")  # true
print("爱我" in "我爱你")  # flase
索引index
  1. 作用:定位单个容器元素
  2. 语法:容器[整数]
  3. 说明:
    正向索引从0开始,第二个索引为1,最后一个为len(s)-1。
    反向索引从-1开始,-1代表最后一个,-2代表倒数第二个,以此类推,第一个是-len(s)。
message = "我是小白啊."
# 索引:定位单个元素
print(message[1])#是
print(message[-2])#啊
# 索引越界
# print(message[7])# 报错 IndexError
# print(message[-8])# 报错 IndexError
切片slice
  1. 作用:
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值