Python如何将打印的指定样式金字塔内容存入字符串变量s
代码修改方案
原来的代码直接调用print()会把内容输出到控制台,只需要把所有打印操作替换为向s变量追加字符串即可,修改后的完整代码如下:
h = 10 def build_string_pyramid(): s = '' for i in range(1, h + 1): s += '1' for j in range(2, i + 1): s += '*' s += str(j) s += '\n' for o in range(h - 1, 0, -1): s += '1' for p in range(2, o + 1): s += '*' s += str(p) s += '\n' return s # 调用函数获取金字塔字符串再打印,效果和之前完全一致 pyramid_str = build_string_pyramid() print(pyramid_str)
修改说明
- 所有原本
print(xxx, end='')的逻辑,都替换为s += xxx,注意数字类型的j、p要转成字符串才能拼接,所以新增了str()转换 - 每行结束后原本的换行操作,替换为给
s追加\n换行符,比原来的\r(回车符)适配性更好,不同系统都能正常识别换行 - 函数返回的
s就是完整的金字塔字符串,你可以直接用这个变量做后续的打印、写入文件等操作
内容的提问来源于stack exchange,提问作者eagleadmiral
相关产品推荐
相关产品推荐

