定义
由一系列字符组成的不可变序列容器,存储的是字符的编码值。
编码
- 字节byte:计算机最小存储单位,等于8位bit.
- 字符:单个的数字,文字与符号。
- 字符集(码表):存储字符与二进制序列的对应关系。
- 编码:将字符转换为对应的二进制序列的过程。
- 解码:将二进制序列转换为对应的字符的过程。
- 编码方式:
--ASCII编码:包含英文、数字等字符,每个字符1个字节。
--GBK编码:兼容ASCII编码,包含21003个中文;英文1个字节,汉字2个字节。
--Unicode字符集:国际统一编码,旧字符集每个字符2字节,新字符集4字节
--UTF-8编码:Unicode的存储与传输方式,英文1字节,中文3字节。
相关函数
- ord(字符串):返回该字符串的Unicode码。
- chr(整数):返回该整数对应的字符串。
# 字 --> 数 number = ord("a") print(number) # 数 --> 字 chrt = chr(97) print(chrt)
字面值
单引和双引号的区别
- 单引号内的双引号不算结束符
- 双引号内的单引号不算结束符
三引号作用
- 换行会自动转换为换行符\n
- 三引号内可以包含单引号和双引号
- 作为文档字符串
""" 字符串字面值 """ # 1.各种写法 content01 = "字面值" content02 = '字面值' # 可见即所得 content03 = '''字面值''' content04 = """ 字面 值 """ print(content01) print(content02) print(content03) print(content04) # 2.引号冲突 content05 = '我是"孙悟空"。' content06 = "我是'孙悟空'。" content07 = """我是'孙'悟"空".""" print(content05) print(content06) print(content07)
转义字符
- 改变字符的原始含义。\’ \” \””” \n \\ \t \0 空字符
- 原始字符串:取消转义。 a = r”C:\newfile\test.py”
# 3. 转义符:改变原始含义的特殊字符 # \" \' \\ \n换行 ... content07 = "我是\"孙悟空\"。" content08 = "我是\n孙悟空。" url = "c:\\a\\b\c\d.txt" # 原始字符 r"字符串" url = r"c:\a\b\c\d.txt" print(content08)
字符串格式化
- 定义:生成一定格式的字符串。
- 语法:字符串%(变量)"我的名字是%s,年龄是%s" % (name, age)
- 类型码:%s 字符串 %d整数 %f 浮点数
# 4. 字符串格式化 subject = "I" predicate = "kiss" object = "you" # print("主语是:" + subject + ",谓语是:" + predicate + ",宾语是:" + object + ".") print("主语是:%s,谓语是:%s,宾语是:%s." % (subject, predicate, object)) cure_rate = 99.5 # print("治愈比例为" + str(cure_rate) + "%") print("治愈比例为%s%%" % (cure_rate)) # %f 用于控制小数精度 money = 1.23245124 print("金额是:%.2f元" % money) # 金额是:1.23元 # %d 用于控制整数位数 second = 6 print("秒:%.2d"%(second)) #秒:06 """ 练习:根据下列文字,提取变量,使用字符串格式化打印信息 湖北确诊67802人,治愈63326人,治愈率0.99 70秒是01分零10秒 """ confirmed = 67802 cured = 63326 cure_rate = cured / confirmed print("湖北确诊%s人,治愈%s人,治愈率%.2f" %(confirmed,cured,cure_rate)) total_second = 70 print("%s秒是%.2d分零%.2d秒" % (total_second,total_second // 60,total_second % 60)) print(f"{total_second}秒是{total_second // 60:02}分零{total_second % 60:02}秒")
Python入门容器-字符串Day05
于 2022-01-26 01:00:39 首次发布