目录
1.2、用format()方法和ljust()方法打印出九九乘法表
1、打印九九乘法表
1.1、普通循环嵌套
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
代码如下:
for i in range(1,10):
for j in range(1,i+1):
print('%d*%d=%d'%(i,j,i*j),end=' ')
print()
1.2、用format()方法和ljust()方法打印出九九乘法表
for i in range(1,10):
for j in range(1,i+1):
print("{0}*{1}={2}".format(i,j,i*j).ljust(8),end=" ")
print()
2、打印星星系列:
2.1、星星一
打印三角形
*
* *
* * *
* * * *
代码如下:
for i in range(1,5):
for j in range(i):
print('*',end=' ')
print()
2.2、星星二
打印倒三角形
* * * * *
* * * *
* * *
* *
*
代码如下:
for i in range(1,6):
for j in range(6-i):
print('*',end=' ')
print()
2.3、星星三
打印三角形
*
* *
* * *
* * * *
* * * * *
代码如下:
for i in range(1,6):
for j in range(6-i):
print(' ',end=' ')
for z in range(i):
print('*',end=' ')
print()
2.4、星星四
打印三角形
* * * * *
* * * *
* * *
* *
*
代码如下:
for i in range(1,6):
for j in range(i):
print(' ',end=' ')
for z in range(6-i):
print('*',end=' ')
print()
2.5、星星五
打印等边三角形
*
* * *
* * * * *
* * * * * * *
* * * * * * * * *
* * * * * * * * * * *
代码如下:
for i in range(1,7):
for j in range(7-i-1):
print(' ',end=' ')
for z in range(2*i-1):
print('*',end=' ')
print()
2.6、星星六
打印菱形
1 *
2 * *
3 * *
4 * *
5 * *
6 * *
7 * *
8 * *
9 * *
10 *******************
9 * *
8 * *
7 * *
6 * *
5 * *
4 * *
3 * *
2 * *
1 *
代码如下:
num = 10
for row in range(num):
print('{:<8d}'.format(row + 1), end='')
print((num - row) * ' ', end='') # 输出空格,这里可以用乘号
for col in range(2 * row + 1):
if col == 0 or col == 2 * row or row == num - 1: # 条件:左右边界或下边界,打印*,否则打印空格
print('*', end='')
else:
print(' ', end='')
print()
for row in range(num - 2, -1, -1):
print('{:<8d}'.format(row + 1), end='')
for j in range(num - row): # 输出空格,这里有可以用循环
print(' ', end='')
for col in range(2 * row + 1):
if col == 0 or col == 2 * row:
print('*', end='')
else:
print(' ', end='')
print()
3、猜数字游戏
预设一个0~9之间的整数,让用户猜一猜并输入所猜的数字,如果大于预设的数,
显示“太大了”,小于预设的数,显示“太小了”
如此循环,直至猜中这个预设的数字,猜中之后显示“恭喜您猜中啦”,
代码如下:
num = 6
while num:
user_num = int(input("请猜猜这个值:\n"))
if user_num > num:
print("太大了")
elif user_num < num:
print("太小啦")
elif user_num == num:
print("恭喜您!猜中啦!!!")
break
4、计算素数问题
输出1000以内的素数以及这些素数之和
(素数:是指除了本身和1之外,不能被其他任何整数整除的数)
代码如下:
slist = []
for n in range(2,1000):
for i in range(2,n):
if n%i==0:
break
if i==n-1:
slist.append(n)
break
print(slist)
print("和等于:",sum(slist))
5、计算时间问题(5分30秒)
输入一个时间,输出该时间经过5分30秒后的时间
代码如下:
input_time = input("请输入一个时间(格式为: 12:23:59):\n")
# input_time="12:52:59"
time_list = input_time.split(':')
time_data = [int(x) for x in time_list] # 将输入时间都转换为整数类型
H = time_data[0]
M = time_data[1]
S = time_data[2]
if ((H >= 0) and (H <24)) and ((M>= 0) and (M <=60)) and ((S>= 0) and (S <=60)):
S +=30
if S >= 60:
S = S-60
M+=1
M+=5
if M >= 60:
M = M-60
H+=1
if H ==24:
H = 0
print ('next time:%02d:%02d:%02d'%(H,M,S))
else:
print ('你输入的时间格式有问题,请重新输入!')