python - OUTPUT_PATH 键和 sys.stdout 在 python 中是否具有相同的功能?
问题描述
我遇到了以下代码来查找方阵的对角线和之间的差异。
#!/bin/python3
import math
import os
import random
import re
import sys
def diagonalDifference(arr):
d1=0
d2=0
a=n-1
print(arr[1][1])
for i in range(0,n):
d1+=arr[i][i]
d2+=arr[i][a]
a-=1
if d1>d2:
return d1-d2
else:
return d2-d1
if __name__ == '__main__':
fptr = open(os.environ['OUTPUT_PATH'], 'w')
n = int(input().strip())
arr = []
for _ in range(n):
arr.append(list(map(int, input().rstrip().split())))
result = diagonalDifference(arr)
fptr.write(str(result) + '\n')
fptr.close()
当我用 替换该行时fptr = open(os.environ['OUTPUT_PATH'], 'w')
,fptr = sys.stdout
输出没有什么不同。那么,这两个语句的功能有什么区别呢?
解决方案
推荐阅读
- firebase - Flutter - Provider - 来自多个流的 Firestore 数据
- python - 如何使用 tkinter 中的按钮调用单独的 python 程序?
- c++ - 无法使用 C++ 连接到 MySQL
- python - Python 抽象属性()“无法用抽象方法实例化抽象类 []”,但我做到了
- python - 在 django 后端应用程序中使用参数进行重定向并响应前端应用程序
- python - 将 3 列数据框转换为由范围定义的列的矩阵
- python - 从 MATLAB 到 Python 的循环转换有问题
- python - django 项目中的 django-logpipe (kafka) 实现
- c++ - 将 cout 语句转换为 /printf 语句
- ruby-on-rails - Resque 没有失败明显有问题的工作