Python-100例(7-8) 复制列表 & 打印乘法口诀

2019 年第 27 篇,总 51 篇文章 本文大约 1700 字,阅读大约需要 6 分钟

前面分享的六道题目如下:

这次是分享 Python-100 例的第 7-8 题,分别是复制列表和打印乘法口诀,这两道题目都比较简单。


Example-7 复制列表

题目:将一个列表的数据复制到另一个列表

思路

直接采用切片操作,即 [:]

代码实现

这道题目比较简单,代码如下:

print('original list: {}'.format(input_list))
copyed_list = input_list[:]
print('copyed_list: {}'.format(copyed_list))

输出结果如下:

original list: [3, 2, '1', [1, 2]]
copyed_list: [3, 2, '1', [1, 2]]

这道题目只要知道列表的切片操作,就非常简单,当然如果不知道这个操作,也可以通过 for 循环来遍历实现复制的操作,就是没有这么简洁,一行代码搞定。

Example-8 乘法口诀

题目:输出 9*9 乘法口诀

思路

最简单就是通过两层的 for 循环,两个参数,一个控制行,一个控制列,然后注意每行输出个数,即每层循环的起始和结束条件。

代码实现

两种实现方法如下:

# 第一种,for 循环实现
def multiplication_table1():
    for i in range(1, 10):
        for j in range(1, i + 1):
            print('%d*%d=%-2d ' % (i, j, i * j), end='')
        print('')


# 第二种,一行代码实现
def multiplication_table2():
    print('\n'.join([' '.join(['%s*%s=%-2s' % (y, x, x * y) for y in range(1, x + 1)]) for x in range(1, 10)]))

结果如下:

1*1=1 
1*2=2  2*2=4 
1*3=3  2*3=6  3*3=9 
1*4=4  2*4=8  3*4=12 4*4=16
1*5=5  2*5=10 3*5=15 4*5=20 5*5=25
1*6=6  2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7  2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8  2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9  2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81

练习代码已经上传到我的 GitHub 上了:

https://github.com/ccc013/CodesNotes/tree/master/Python_100_examples


小结

今天分享的两道题目就到这里,如果你有更好的解决方法,也可以后台留言,谢谢!

原文发布于微信公众号 - 算法猿的成长(AI_Developer)

原文发表时间:2019-03-08

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券