格式化输出和字符串转义

占位符 使用示意 作用
%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>

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

bytes和bytearray

1:bytes(二进制序列类型)
一:用指定长度的0来填充字节对象
bys1 = bytes(5)
二:二进制字符串对象
bys2 = bytes(b'abcde')
2:bytearray(二进制数组)
一:用指定长度的0来填充字节对象
bya1 = bytearray(5)
二:二进制字符串对象
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. git命令行工作环境配置【转】

    转自:http://www.cocoachina.com/ios/20171115/21163.html 本文为CocoaChina网友whf5566投稿 前言 笔者一直使用git的图形化工具sour ...

  2. linux系统编译安装软件的通用步骤

    编译安装的步骤: 1.下载源代码,并解压     tar -xf package-version.tar.{gz|bz2|xz} 注意:展开后的目录通常为package-version 2.切换至源码 ...

  3. Android:Animation

    Android 之 Animation 关于动画的实现,Android提供了Animation,在Android SDK介绍了2种Animation模式:1. Tween Animation:通过对场 ...

  4. 转:MySQL如何修改密码

    转:https://www.cnblogs.com/yang82/p/7794712.html. 第一种方式: 最简单的方法就是借助第三方工具Navicat for MySQL来修改,方法如下: 1. ...

  5. Flex 布局教程转载

    Flex 布局教程:语法篇 http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html Flex 布局教程:实例篇 http://www.ruan ...

  6. Web开发.net framework 类库中必须掌握的命名空间(或者类)【转】

    Web开发常用命名空间和类. System.Collections //命名空间包含接口和类,这些接口和类定义各种对象(如列表.队列.位数组.哈希表和字典)的集合.System.Collections ...

  7. python作业(day1)

    1.输入用户名密码 ,认证成功后显示欢迎信息 ,输错三次后锁定 ,锁定后再次登录时直接提示已锁定 2.多级菜单 三级菜单 可依次进入各子菜单 所需新知识点:列表.字典

  8. oneinstack如何安装ssl证书和配置Let's Encrypt免费SSL证书教程汇总(转)

    OneinStack包含以下组合:lnmp(Linux + Nginx+ MySQL+ PHP) LNMP安装SSL安全证书 部署HTTPS:https://www.gworg.com/ssl/309 ...

  9. Linux 下安装 MATLAB

    MATLAB是美国MathWorks公司出品的商业数学软件,主要用于算法开发.数据可视化.数据分析以及数值计算的高级技术计算语言和交互式环境,是一款优秀而又强大的数学软件. 本文基于 Deepin 1 ...

  10. poj 2752 求一个字符串所有的相同前后缀

    求一个字符串所有的相同前后缀Sample Input ababcababababcababaaaaaSample Output 2 4 9 181 2 3 4 5 #include <iostr ...