把杨辉三角写到文件里面去再从文件读取
时间: 2024-03-19 11:45:44 浏览: 14
好的,我可以为您完成这个任务。首先,您需要指定一个文件路径来存储杨辉三角。以下是一个示例代码,可以生成杨辉三角并将其写入文件中:
```python
def generate_pascal_triangle(num_rows):
triangle = []
for row_num in range(num_rows):
row = [None for _ in range(row_num+1)]
row[0], row[-1] = 1, 1
for j in range(1, len(row)-1):
row[j] = triangle[row_num-1][j-1] + triangle[row_num-1][j]
triangle.append(row)
return triangle
def write_pascal_triangle_to_file(file_path, num_rows):
triangle = generate_pascal_triangle(num_rows)
with open(file_path, 'w') as file:
for row in triangle:
row_str = ' '.join([str(num) for num in row])
file.write(row_str + '\n')
# Example usage:
write_pascal_triangle_to_file('pascal_triangle.txt', 10)
```
在此示例中,`generate_pascal_triangle` 函数用于生成指定行数的杨辉三角,`write_pascal_triangle_to_file` 函数使用 `with open` 语句打开指定文件并将杨辉三角写入文件中。在此示例中,杨辉三角的前 10 行被写入名为 `pascal_triangle.txt` 的文件中。
要从文件中读取杨辉三角,您可以使用以下代码:
```python
def read_pascal_triangle_from_file(file_path):
triangle = []
with open(file_path, 'r') as file:
for line in file:
row = [int(num) for num in line.strip().split()]
triangle.append(row)
return triangle
# Example usage:
triangle = read_pascal_triangle_from_file('pascal_triangle.txt')
print(triangle)
```
在此示例中,`read_pascal_triangle_from_file` 函数使用 `with open` 语句打开指定文件并将每行解析为一个整数列表。整个杨辉三角被读取到一个列表中,并返回给调用者。在此示例中,我们使用 `print` 语句打印了读取的杨辉三角。