版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
字符串的转义、编码和格式化制作:教材编写团队出版社:机械工业出版社《Python编程基础与应用》配套课件本课件为《Python编程基础与应用(第2版)》配套教学资源,由编写团队精心打造。为便于教学使用,团队同步提供了丰富的辅助材料,涵盖微课视频、教学课件、实训手册、习题答案、课程标准及程序源代码等。同时,教材配套超星教学示范包,支持一键克隆为网络在线课程,助力高效开展线上线下混合式教学。欢迎联系出版方订购使用。
书名:《Python编程基础与应用(第2版)》出版社:机械工业出版社主编:蓝永健、陈冬冬副主编:蔡德琛、朱海鑫、邓爱玲+contents目录字符串的转义字符字符串的编码字符串的格式化处理字符串的转义字符01字符串的转义字符字符串的表示中,有一些字符与反斜杠’\’结合就具有不同的含义,比如说打印换行符\n和回车符\r,为了能够正确输出所需字符,这个时候就需要使用转义字符进行表示。转义字符描述\(在行尾时)续行符\\反斜杠符号\'单引号\"双引号\a响铃\b退格(Backspace)\e转义\000空\n换行\v纵向制表符\t横向制表符\r回车\f换页举例:字符串中字符与编码转换操作如果想在字符串中使用单引号,可以在字符串外面使用双引号表示即可,但如果字符串外面使用的也是单引号,那该如何书写呢?print("it'sagoodday")#外层双引号,内层单引号,可正常输出#下面代码外层和内层都是单引号,编译器会提示错误SyntaxError:invalidsyntax#print('it'sagoodday')print('it\'sagoodday')#使用转义字符\print(r'it\'sagoodday')#加上r引导#结题如下it'sagooddayit'sagooddayit\'sagoodday举例:不可见字符与特殊符号\n实现换行\t插入制表符(通常4或8个空格)\\表示真正的反斜杠\"在双引号字符串中表示双引号本身print("第一行文本\n第二行文本\t制表符\\反斜杠\"双引号")#输出第一行文本第二行文本制表符\反斜杠"双引号举例:ASCII/Unicode编码\101是八进制表示的ASCII字符'A'(65的八进制是101)\x41是十六进制表示的ASCII字符'A'(65的十六进制是41)\u4F60\u597D是Unicode表示的"你好"print("八进制\101代表'A',十六进制\x41也是'A'\nUnicode字符\u4F60\u597D是'你好’”)#结果如下八进制A代表'A',十六进制A也是'A'Unicode字符你好是'你好'字符串的编码02字符串的编码计算机世界有多种语言,每种语言拥有自己的编码方式,就像不同国家都有自己的语言一样,如果想要顺畅交流,就需要有统一的交流语言。UTF-8-->decode解码-->UnicodeUnicode-->encode编码-->GBK/UTF-8常用编码格式UTF-8:最常用的Unicode编码,兼容ASCIIGBK:中文编码标准ASCII:仅支持英文字符Latin-1:ISO-8859-1编码编码encode()语法作用:将Unicode字符串编码为指定编码的bytes对象它的参数说明如下:encoding:要使用的编码,如UTF-8、base64和GBK等。errors:设置不同错误的处理方案。默认为'strict',意为编码错误引起一个UnicodeError。其他可能得值有'ignore','replace','xmlcharrefreplace','backslashreplace'以及通过codecs.register_error()注册的任何值。str.encode(encoding='UTF-8',errors='strict')解码decode()语法作用:将bytes对象解码为Unicode字符串它的参数说明与编码encode()语法类似。str.dncode(encoding='UTF-8',errors='strict')举例:encode()方法text="你好世界"encoded=text.encode('utf-8’)#b'\xe4\xbd\xa0\xe5\xa5\xbd\xe4\xb8\x96\xe7\x95\x8c'print(encoded)gbk_encoded=text.encode('gbk')#b'\xc4\xe3\xba\xc3\xca\xc0\xbd\xe7'print(gbk_encoded)举例:decode()方法byte_data=b'\xe4\xbd\xa0\xe5\xa5\xbd'decoded=byte_data.decode('utf-8')#"你好"print(decoded)举例:基本编码解码#编码过程original="Python编程"utf8_bytes=original.encode()#默认UTF-8gbk_bytes=original.encode('gbk')#解码过程decoded_utf8=utf8_bytes.decode('utf-8')decoded_gbk=gbk_bytes.decode('gbk')print(decoded_utf8==decoded_gbk)#True范例:字符串编码和解码str="Python编程";#定义一个字符串print("默认字符串:",str)print("UTF-8编码:",str.encode("UTF-8"))#编码为UTF-8print("GBK编码:",str.encode("GBK"))#编码为GBKprint("UTF-8解码:",str_utf8.decode('UTF-8','strict'))#解码为UTF-8print("GBK解码:",str_gbk.decode('GBK','strict'))#解码为GBK#结果如下默认字符串:Python编程UTF-8编码:b'Python\xe7\xbc\x96\xe7\xa8\x8b'GBK编码:b'Python\xb1\xe0\xb3\xcc'UTF-8解码:Python编程GBK解码:Python编程字符串的格式化处理03字符串的格式化处理字符串格式化是为了让字符输出有统一规范的格式,常用的格式化方式有%-formatting和str.format()两种方式,在Python3.6版本后,字符串格式化新增f-strings方式,易读性和效率也更高。%-formatting方式str.format()方式f-strings方式字符串的格式化处理-%-formatting方式百分号占位符(%-formatting)方式在Python2.x中用的比较广泛,使用%进行占位要注意,当%的左右均为数字的时候,表示求余数的操作;但%出现在字符串中的时候,表示格式化操作符。符号描述%c
格式化字符及其ASCII码%s
格式化字符串%d
格式化十进制整数%u
格式化无符号整型%o
格式化无符号八进制数%x
格式化无符号十六进制数%X
格式化无符号十六进制数(大写)%f
格式化浮点数字,可指定小数点后的精度%e
用科学计数法格式化浮点数%E
作用同%e,用科学计数法格式化浮点数%%
输出%字符串的格式化处理-str.format()方式str.format()方式对%-formatting进行改进,统一使用大括号{}进行标记替换字段,采用函数调用的语法,通过位置参数和关键字参数进行格式化输出。用法一:位置映射按参数传入顺序自动填充,或显式指定索引`{0}`,`{1}`。参数可重复调用,无需重复传值,适合参数顺序固定的场景。用法二:关键字映射使用有意义的变量名作为占位符(如{product}),参数含义一目了然。打破参数顺序限制,是处理复杂业务数据的首选。用法三:混合参数结合位置与关键字的灵活性,但必须遵循“位置参数在前,关键字参数在后”的核心语法规则,否则会触发语法错误。format()函数format()函数是Python中一个非常强大且灵活的字符串格式化方法,它允许以更可读和简洁的方式插入变量到字符串中,替代传统的百分号(%)格式化或str.format()方法。format()函数的基本用法是在字符串中用大括号{}标记占位符,然后通过传递参数来填充这些占位符。#语法formatted_string="模板字符串".format(值1,值2,...)#或使用命名参数:formatted_string="模板字符串".format(name1=值1,name2=值2,...)format()函数的举例——按顺序插入值print("{}is{}".format("Python","awesome"))#输出:Pythonisawesomeformat()函数的举例——按索引重复使用值print("{0}{1}!{0}rocks!".format("Hello","World"))#输出:HelloWorld!Hellorocks!format()函数的举例——按命名参数print("{name}is{age}yearsold".format(name="Alice",age=25))#输出:Aliceis25yearsoldformat()函数的举例——综合示例name="python"city="东莞"#使用位置参数print("我的名字是{},我来自{}".format(name,city))#使用关键字参数print("我的名字是{name},我来自{city}".format(name=name,city=city))format()函数——格式说明符在{}中使用冒号:指定格式,例如::d整数:f浮点数:.2f保留两位小数:s字符串:^居中对齐:<左对齐:>右对齐format()函数——格式说明符#数字格式化print("PI:{:.2f}".format(3.1415926))#输出:PI:3.14#对齐和填充print("{:^10}".format("Hi"))#输出:Hi(居中对齐,宽度10)print("{:<10}".format("Hi"))#输出:Hi(左对齐)print("{:>10}".format("Hi"))#输出:Hi(右对齐)#千位分隔符print("{:,}".format(1000000))#输出:1,000,000format()函数的举例——数字和字符串混合输出print("{}costs${:.2f}".format("Apple",2.99))#输出:Applecosts$2.99format()函数的举例——百分比格式print("{:.1%}".format(0.85))#输出:85.0%f-stringf-string是Python3.6及更高版本中引入的一种新的字符串格式化方法。它以字母f或F开头,并在字符串内部使用大括号{}包围表达式,这些表达式将在运行时求值,并将其结果插入到字符串的相应位置。name="python"city="东莞"print(f"我的名字是{name},我来自{city}。")#输出结果与上面一样#f-string还支持更复杂的表达式和函数调用x=5y=10print(f"两个数加法运算{x}+{y}等于{x+y}")f-string举例——直接嵌入变量name="Alice"age=25print(f"{name}is{age}yearsold")#输出:Aliceis25yearsoldf-string举例——嵌入表达式x,y=3,4print(f"Thesumof{x}and{y}is{x+y}")#输出:Thesumof3and4is7f-string的格式说明符f-string支持与format()类似的格式说明符,通过在{}内使用冒号:指定格式。#数字格式化pi=3.1415926print(f"PI:{pi:.2f}")#输出:PI:3.14#对齐和填充print(f"{'Hi':^10}")#输出:Hi(居中对齐,宽度10)print(f"{'Hi':<10}")#输出:Hi(左对齐)print(f"{'Hi':>10}")#输出:Hi(右对齐)f-string的格式说明符f-string支持与format()类似的格式说明符,通过在{}内使用冒号:指定格式。#千位分隔符number=100000
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安全标准化第四要素培训教育
- 2026中国高端装备制造产业技术突破与进口替代空间报告
- 2026中国土地市场泡沫预警指标体系构建报告
- 2026中国智能物流装备行业发展现状与投资机会报告
- 2026生物D打印技术在医疗领域的应用趋势分析
- 2026智能可穿戴设备医疗级认证与数据隐私研究报告
- 2026中国高端医疗器械临床试验效率提升策略报告
- 高中数学 第2章 算数初步章末综合提升(教师用书)教学设计 北师大版必修3
- 湖南省茶陵县高中英语 Unit 1 The world of our senses Project教学设计 牛津译林版必修3
- 江苏省仪征市月塘中学九年级化学下册《7.1 溶液的酸碱性》教学设计 (新版)沪教版
- 政务礼仪培训(2小时)
- 2025年国际经济法自考真题及答案
- 2027届高考语文复习:厘清语法逻辑 解锁语用考题 课件
- 2026秋新教材译林版(三起)小学英语六年上册(全册)各单元测试卷及答案
- 2026天津地铁1号线综合站务员招聘笔试备考试题及答案详解
- GB/T 47968-2026构网型变流器通用技术规范
- 培智数学16册全册教学设计
- 自动化胰岛素输注系统临床应用护理专家共识(2026版)
- 2026年秋季小学数学苏教版六年级上册数学教学计划含教学进度表
- 小企业财务会计制度及核算办法
- SYT 6696-2025《储油罐机械清洗作业规程》
评论
0/150
提交评论