python: print输出到文本文件中;赋值语句的执行流程

python: print输出到文本文件中;赋值语句的执行流程

  • 前言
  • print到文本文件
  • python连续赋值语句的执行流程

前言

本篇记录python中使用print输出到文本文件中,以及python中赋值语句的执行流程。

print到文本文件

python中,可以使用sys.stdout控制程序运行时的输出流,默认将输出打印在运行终端上。如果要输出到文本文件中,可以修改输出流方向到文件中:

import sys
f = open('out.log', 'w')
sys.stdout = f
print('f out')
sys.stdout = sys.__stdout__
print('std out')

上面的第一个print将打印到out.log中,而第二个print将打印在屏幕上。std.__sdtout__保存了原始的输出流向,不应当修改。

python连续赋值语句的执行流程

C++中,赋值语句的执行逻辑是,从右向左赋值,赋值表达式的值是表达式右边的值(被赋的值,左边被赋后的值)。因此,C++中下面的连续赋值语句:

int a, b, c = 1;
a = b = c;

的执行顺序是b = c, a = (b = c)

python中也允许连续赋值:

c = 1
a = b = c

但python中的赋值语句不是表达式,没有返回值。python中的连续赋值顺序是,将语句左边的所有变量按顺序依次赋语句最右边的值,也就是a = c, b = c,下面的程序结果可供参考:

a = [0, 0]
i = 0
i = a[i] = 1
print(a, i)
# [0, 1] 1

你可能感兴趣的:(python相关学习,python,c++,开发语言)