格式化输出与深浅复制

- 常用格式化

  • 占位符

  • %:占位符

  • %s:只接受字符串的占位符

  • %d:只接受数字的占位符

  • %f:只接受浮点数的占位符,默认小数点后6位数,

>>> print("姓名:%s,年龄:%d,身高:%f"%('Kate',20,166.6))
姓名:Kate,年龄:20,身高:166.600000

- %f操作:

  • %.2f:小数点后保留2位数
  • %6.2f:6为当前小数占的字符数/长度,正数右对齐,负数左对齐
price is      16.00
>>> print("price is %-10.2f"%16)
price is 16.00 

- format方法

  • 字符串如何使用此方法:
>>> print("你好{},我是{},今年{}".format("小明","小花",18))  # 按照顺序
你好小明,我是小花,今年18
>>> print("你好{a},我是{b},今年{c}".format(a="小明",b="小花",c=18))  # 按照标记
你好小明,我是小花,今年18
>>> print("你好{2},我是{1},今年{0}".format("小明","小花",18))   # 可标记下标, 后面是0,1,2,按照后面的下标索引对应
你好18,我是小花,今年小明
  • 浮点数如何使用此方法:
>>>print("今年{a:>10.2f}".format(a=18))  #<>向左向右
今年     18.00
>>> print("今年{a:<10.2f}".format(a=18))
今年18.00 
>>> print("今年{:.2f}".format(18))  #变为浮点数
今年18.00
>>> print("今年{a:^10.2f}岁".format(a=18))  # ^ 代表居中左右
今年  18.00   岁

- 深浅复制

  • 只体现在列表中,运行在内存中,对于python的程序,复制后的2个列表不会互相影响,用于多层列表;
  • 外层列表地址空间不一样,不会互相影响;
  • 内层列表空间地址一样,嵌套列表,会互相影响,深复制
  • 浅复制
>>> li = ['a','b','c',['d','e','f']]
>>> li1 = li.copy()  #浅复制
  • 列表里面的嵌套列表指向地址空间一样,浅复制外面的列表ID指向地址不同
  • 查看ID是否属于同个地址空间
>>> print(id(li))
2237637908424
>>> print(id(li1))
2237637648264
>>> print(id(li[3]))
2237634726792
>>> print(id(li1[3]))
2237634726792

- 深复制

  • 通过深复制,内层列表不管有多少层内层列表,地址都会被改变
>>> L = ['a','b','c',['d','e','f']]
>>> import copy
>>> L1 = copy.deepcopy(L)
>>> print(id(L))
2237637344328
>>> print(id(L1))
2237637908616
>>> print(id(L[3]))
2237637499592
>>> print(id(L1[3]))
2237637908744
  • 判断ID地址是否相同,用is
  • 判断值是否相同,用==
>>> print(L is L1)
False

- 其余:
排序 sort, sort的用法,reverse倒序,排序纯数字,字母+数字,以字母/数字为排序的key

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值