《Python学习手册》学习笔记(11)之第11章赋值、表达式和打印(关键词:编程语言/Python/赋值/表达式/打印)

第11章 赋值、表达式和打印

写在开头的读者笔记

值得一读的小节

1.赋值语句
- 赋值语句建立对象引用值。Python**赋值语句会把对象引用值存储变量名或数据结构的元素内。赋值语句总是建立对象引用值,而不是复制对象**。

1.1.赋值语句 - 多目标赋值语句 - 多目标赋值以及共享引用

>>> a = b = []
>>> b = b + 1
>>> a, b
(0, 1)

修改b只会对b发生修改,因为数字不支持原处修改。只要赋值的对象不可变的,即使有一个以上变量名使用该对象无所谓

变量初始值设为空的可变对象时(诸如列表字典),就得小心一点:

>>> a = b = []
>>> b.append(42)
>>> a, b
([42], [42])

为了避免这个问题,要在单独的语句初始化可变对象,以便分别执行独立的常量表达式来创建独立的空对象

>>> a = []
>>> b = []
>>> b.append(42)
>>> a, b
([], [42])

2.表达式语句

2.1.表达式语句 - 表达式语句和在原处的修改

>>> L = L.append(4)
>>> print(L)
None

列表调用append、sort或reverse这类原处修改的运算,一定是对列表做原处的修改,但这些方法在列表修改后不会列表返回。事实上,它们返回的是None对象。

赋值语句

(读者:
- 赋值语句建立对象引用值。Python**赋值语句会把对象引用值存储变量名或数据结构的元素内。赋值语句总是建立对象引用值,而不是复制对象**。

赋值语句的形式
序列赋值
Python3.0中的扩展序列解包
多目标赋值语句
多目标赋值语句以及共享引用

(读者:

>>> a = b = []
>>> b = b + 1
>>> a, b
(0, 1)

修改b只会对b发生修改,因为数字不支持原处修改。只要赋值的对象不可变的,即使有一个以上变量名使用该对象无所谓

变量初始值设为空的可变对象时(诸如列表字典),就得小心一点:

>>> a = b = []
>>> b.append(42)
>>> a, b
([42], [42])

为了避免这个问题,要在单独的语句初始化可变对象,以便分别执行独立的常量表达式来创建独立的空对象

>>> a = []
>>> b = []
>>> b.append(42)
>>> a, b
([], [42])

这里写图片描述

增强赋值语句
变量命名规则
Python的废弃协议

表达式语句

表达式语句和在原处的修改

(读者:

>>> L = L.append(4)
>>> print(L)
None

列表调用append、sort或reverse这类原处修改的运算,一定是对列表做原处的修改,但这些方法在列表修改后不会列表返回。事实上,它们返回的是None对象。

这里写图片描述

打印操作

Python 3.0的print函数
Python 2.6 print语句
打印流重定向
版本独立的打印
为什么要注意print和stdout

参考文献:
1.《Python学习手册》。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值