返回介绍

习题解答

发布于 2024-01-29 22:24:16 字数 721 浏览 0 评论 0 收藏 0

1.你可以使用多重目标赋值语句(A=B=C=0)、序列赋值语句(A,B,C=0,0,0)或者单独行上的多重赋值语句(A=0,B=0,C=0)。就后者的技术而言,就像第10章介绍过的,你也可以把三个单独的语句用分号合并在同一行上(A=0;B=0;C=0)。

2.如果你用这种方式赋值:

这三个变量名都会引用相同对象,所以对其中一个变量名进行在原处的修改[例如,A.append(99)]也会影响其他变量名。只有对列表或字典这类可变对象进行在原处的修改时,才会如此。对不可变对象而言,诸如数字和字符串,则不涉及此问题。

3.列表sort方法就像append方法,也是对主体列表进行在原处的修改:返回None,而不是其修改的列表。赋值给L,会把L设为None,而不是排序后的列表。我们会在本书这一部分后面看到,新的内建函数sorted会排序任何序列,并传回具有排序结果的新列表因为这并不是在原处的修改,将其结果赋值给变量名,就又能说得通了。

4.要把一个单个的打印操作打印到一个文件,可以使用Python 3.0的print(X,file=F)调用形式,使用Python 2.6的扩展的print>>file,X语句形式,或者在打印前把sys.stdout指定为手动打开的文件并在之后恢复最初的值。你也可以用系统shell的特殊语法,把程序所有的打印文字重定向到一个文件,但这是在Python的范围之外的内容了。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文