以下是一个示例代码,根据输入的行数和列数,按行进行计算,并将结果按列写入变量名:
def calculate_and_write(rows, cols):
# 创建一个二维列表,用于存储输入的数据
data = []
for i in range(rows):
row = []
for j in range(cols):
value = float(input("请输入第 {} 行,第 {} 列的数据:".format(i+1, j+1)))
row.append(value)
data.append(row)
# 按行进行计算,并将结果按列写入变量名
for i in range(cols):
# 计算每一列的和
col_sum = sum([row[i] for row in data])
# 计算每一列的平均值
col_avg = col_sum / rows
# 将结果写入变量名
exec("col_{} = {}".format(i+1, col_avg))
# 输出结果
for i in range(cols):
exec("print('第 {} 列的平均值为:{}'.format(i+1, col_{}))".format(i+1))
# 测试
rows = int(input("请输入行数:"))
cols = int(input("请输入列数:"))
calculate_and_write(rows, cols)
在这个示例中,我们首先创建一个二维列表data
,用于存储输入的数据。然后,在按行输入数据后,我们使用一个嵌套的for
循环来计算每一列的和和平均值,并将结果按列写入变量名(使用exec
函数动态执行代码)。最后,我们使用exec
函数动态输出每一列的平均值。
注意:使用exec
函数动态执行代码可以实现将结果按列写入变量名,但也存在一定的安全风险。在实际应用中,应注意对输入数据进行验证和过滤,以及谨慎使用动态执行代码的方式。
上一篇:按行截断段落而不是按字符截断
下一篇:按行进行Pandas Q-Cut