列表的横版与竖版--以“千山鸟飞绝”为例

# 正常版本
str1 = "千山鸟飞绝"
str2 = "万径人踪灭"
str3 = "孤舟蓑笠翁"
str4 = "独钓寒江雪"

verse = [list(str1), list(str2), list(str3), list(str4)]  # 定义一个二维列表,存储古诗的每一行

print("\n-- 横版 --\n")  # 打印分隔线
for i in range(4):  # 循环古诗的每一行
    for j in range(5):  # 循环每一行的每个字(列)
        if j == 4:  # 如果是一行中的最后一个字
            print(verse[i][j])  # 换行输出
        else:
            print(verse[i][j], end='')  # 不换行输出,下一个字符会紧接着显示


# 竖版1
str1 = "千山鸟飞绝"
str2 = "万径人踪灭"
str3 = "孤舟蓑笠翁"
str4 = "独钓寒江雪"

verse = [list(str1), list(str2), list(str3), list(str4)]  # 定义一个二维列表,存储古诗的每一行
verse.reverse

print("\n-- 横版 --\n")  # 打印分隔线
for i in range(5):  # 循环古诗的每一列
    for j in range(4):  # 循环每一列的每个字(行)
        if j == 3:  # 如果是一行中的最后一个字
            print(verse[j][i])  # 换行输出
        else:
            print(verse[j][i], end='')  # 不换行输出,下一个字符会紧接着显示


# 竖版2
str1 = "千山鸟飞绝"
str2 = "万径人踪灭"
str3 = "孤舟蓑笠翁"
str4 = "独钓寒江雪"

verse1 = [list(str1), list(str2), list(str3), list(str4)]
verse1.reverse()

# 创建一个新的列表,用于存储竖版排列的诗句
verse2 = []

# 循环处理每一列,将每一列的字按照指定顺序组合
for col_index in range(5):
    # 提取每一列的字
    column = [row[col_index] for row in verse1]
    # 将字按照指定顺序组合成一句诗,空字符直接联接
    line = ''.join(column)
    # 将组合好的诗句添加到竖版诗句列表中
    verse2.append(line)

# 打印竖版古诗
print("\n-- 竖版 --\n")
for line in verse2:
    print(line + ",") #,分隔

效果图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值