这次是分享 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 上了:
小结
今天分享的两道题目就到这里。