格式化输出和字符串转义

占位符 使用示意 作用
%s '%s %s' % ('hello', 'world') 表示占位的是str
%d '%d %d' % (1, 2) 表示占位的是int
%d '%d %d' % (1.3,2.9) 如果使用float占位,输出整数部分
%f '%f %f' % (1.3,2.9) 表示占位的是float,默认不足6位小数末尾用0补全
    以上是上上节课的内容
  %有关的内容  
%.if '%.2f %.4f' % (1.123, 2.12) i为一个整数,表示小数后的位数,不足用0补全
%xf '%8f<>%10f' % (1.2, 1.2) x为一个整数,表示整个数字的位数,不足在左边用空格补全
%+f '%+f<>%+f' % (1.2, 1.2)' + 表示显示正负号
%-f '%-7.2f<>%-7.2f' % (-1.2, 1.2) - 表示不足位数在右边用空格补全
%c '%c' % 97 表示占位的为ASCII码,输出ASCII对应的字符
%o '%o' % 8 表示占位的为十进制数字,输出对应的八进制数字
%x ‘%x’ % 16 表示占位的为十进制数字,输出对应的十六进制数字
%e ‘%e’ % 11 表示占位的是数字,用科学计数法输出
%r '%r<>%r' % ('1', 1) 原始形象输出;区分字符串1 和 数字1
  foramt有关的内容  
{index} ‘{1}<>{0}’.format('零', '一') 索引输出
{obj} '{x}<>{y}'.format(x=2, y=1) 关键字输出
{:x} '{:x}'.format(16) 十进制转十六进制
{:o} '{:o}'.format(8) 十进制转八进制
{:*<i} '{:#<5} {:*<8}'.format(123, 'abc') i表示整数,*表示补全的符号;不足位数在右边用符号补全
{:*>i} '{:#>5} {:*>8}'.format(123, 'abc') i表示整数,*表示补全的符号;不足位数在左边用符号补全
{:*^i} '{:#^5} {:*^8}'.format(123, 'abc') i表示整数,*表示补全的符号;不足位数在两边用符号补全

            

接下来是转义符

转义符 作用
\a 发出一声响
\n 换行符
\t 水平制表符
\b 退格符
\r 将当前位置移动到本行开头
\ 代表 \,转义特殊字符
\0 空字符

字符串处理

添加的字符 作用
u 对字符进行Unicode编码
r 取消转义
b

代表该字符串为bytes类型

字符串编码

PPT第十三页 编码规则PPT第十四页

方法 作用
encode 编码
decode 解码

深浅复制

<font color='red'> 深浅复制只在列表嵌套的时候才讨论 </font>

  1. li1 = [1,2,3,[4,5,6]]
  2. li2 = li1.copy()
  3. 这个时候我们的li1li2是不是相等的?如果我在这里修改li1[3][0] = 'a'
  4. 我们来看li1的结果 会变成什么?是不是[1,2,3,['a',5,6]],这个时候我们来看li2变成了和li1一样的了?
  5. 为什么呢?我么来看li1[3]和li2[3]的ID,是不是一样的,说明什么?说明他们是同一个对象;这就是浅复制
  6. 那么什么是深复制呢?
  7. import copy
  8. li3 = copy.deepcopy(li1)
  9. 现在我们再来修改嵌套的列表,看看会不会改变另一个

bytes和bytearray

  1. 1bytes(二进制序列类型)
  2. 一:用指定长度的0来填充字节对象
  3. bys1 = bytes(5)
  4. 二:二进制字符串对象
  5. bys2 = bytes(b'abcde')
  6. 2bytearray(二进制数组)
  7. 一:用指定长度的0来填充字节对象
  8. bya1 = bytearray(5)
  9. 二:二进制字符串对象
  10. bya2 = bytearray(b'abcde')

 

潭州课堂25班:Ph201805201 第五课:格式化输出和深浅复制 (课堂笔记)的更多相关文章

  1. 潭州课堂25班:Ph201805201 WEB 之 页面编写 第四课 登录注册 (课堂笔记)

    index.html 首页 <!DOCTYPE html> <html lang="en"> <head> <meta charset=& ...

  2. 潭州课堂25班:Ph201805201 WEB 之 页面编写 第三课 (课堂笔记)

    index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...

  3. 潭州课堂25班:Ph201805201 WEB 之 页面编写 第二课 (课堂笔记)

    index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...

  4. 潭州课堂25班:Ph201805201 WEB 之 页面编写 第一课 (课堂笔记)

    index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...

  5. 潭州课堂25班:Ph201805201 第十课 类的定义,属性和方法 (课堂笔记)

    类的定义 共同属性,特征,方法者,可分为一类,并以名命之 class Abc: # class 定义类, 后面接类名 ( 规则 首字母大写 ) cls_name = '这个类的名字是Abc' # 在类 ...

  6. 潭州课堂25班:Ph201805201 第八课:函数基础和函数参数 (课堂笔记)

    1, 函数定义 def fun(): print('测试函数') fun() #调用函数 return 运行函数返回值 def fun(): name = [1,3,4,5] return name[ ...

  7. 潭州课堂25班:Ph201805201 django 项目 第五课 静态页面转为模板 (课堂笔记)

    一.分析静态页面   1.静态vs动态 条目 静态页面 动态页面 网站内容 固定不变 经常变动 浏览器加载速度 更快(无需向服务器发起请求) 更慢 改变网站内容 很难(修改或者创建新的html页面) ...

  8. 潭州课堂25班:Ph201805201 爬虫基础 第十五课 js破解 二 (课堂笔记)

    PyExecJs使用 PyExecJS是Ruby的ExecJS移植到Python的一个执行JS代码的库. 安装 pip install PyExecJS 例子 >>> import ...

  9. 潭州课堂25班:Ph201805201 并发(协程) 第十五课 (课堂笔记)

    #斐波那契 def fid(n): res = [] indx = 0 a = 0 b = 1 while indx < n : res.append(b) a,b = b,a+b indx + ...

随机推荐

  1. FarBox--另类有趣的网站服务【转】

    FarBox--另类有趣的网站服务 转自:http://mosir.org/html/y2012/the-interesting-web-service-serve-by-FarBox.html 作者 ...

  2. python3爬虫中文乱码之请求头‘Accept-Encoding’:br 的问题

    当用python3做爬虫的时候,一些网站为了防爬虫会设置一些检查机制,这时我们就需要添加请求头,伪装成浏览器正常访问. header的内容在浏览器的开发者工具中便可看到,将这些信息添加到我们的爬虫代码 ...

  3. windows系统下安装tomcat及配置

    1.安装测试 1.安装 推荐使用免安装版的Tomcat(放在没有中文和空格的目录下),前提是已经安装了JDK并配置了环境变量. 2.测试 双击startup.bat,浏览器输入url:localhos ...

  4. mysql删除数据库文件ibdata1后引发的故障

    进行性能测试是发现大量报错: Duplicate entry主键重复 可以看到mysql数据库中已经没有innodb引擎启动信息了 之前发现ibdata1占用了大量硬盘,为了省出空间删除了数据库ibd ...

  5. table下tbody滚动条与thead对齐的方法且每一列可以不均等

    1 前言 table下tbody滚动条与thead对齐的方法,开始在tbody的td和thead的tr>td,对每一个Item加入百分比,结果是没对齐.也尝试了用bootstrap的col-md ...

  6. JUnit单元测试--IntelliJ IDEA

    单元测试的基本使用 一.环境配置 使用idea IDE 进行单元测试,首先需要安装JUnit 插件. 1.安装JUnit插件步骤 File-->settings-->Plguins--&g ...

  7. 【ES】学习5-全文搜索

    全文搜索两个最重要的方面是:相关性, 分析. 一旦谈论相关性或分析这两个方面的问题时,我们所处的语境是关于查询的而不是过滤. match:单个词查询 GET /my_index/my_type/_se ...

  8. Linux学习笔记:使用shell脚本实现ftp的自动上传下载

    在 Linux 下可以利用 Shell 实现 ftp 文件的自动上传和下载,封装至 crontab 更可实现定时调度. 1.ftp自动登录批量下载文件 ##### 从ftp服务器上的/home/dat ...

  9. 步步为营-54-DOM

    说明:DOM document object model 文档对象模型.将所有的标记加载到内存中,以树形结构处理 1.1 使用JavaScript操作DOM,主要包括两个部分 Browser对象:BO ...

  10. Array,ArrayList,泛型List比较

    在C#中数组Array,ArrayList,泛型List都能够存储一组对象,但是在开发中根本不知道用哪个性能最高,下面我们慢慢分析分析. 一.数组Array 数组是一个存储相同类型元素的固定大小的顺序 ...