Skip to content

Commit cb8d185

Browse files
authored
Merge pull request #10 from jiangmiemie/master
增加2个工具,优化一个工具
2 parents 23c1067 + 589e359 commit cb8d185

23 files changed

+770
-5
lines changed

01_base/练习/九九乘法表.py

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
'''要求使用循环代码打印一个九九乘法表出来.如下
2+
1*1=1
3+
4+
1*2=2 2*2=4
5+
6+
1*3=3 2*3=6 3*3=9
7+
8+
1*4=4 2*4=8 3*4=12 4*4=16
9+
10+
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
11+
12+
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
13+
14+
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
15+
16+
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
17+
18+
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
19+
20+
'''
21+
22+
23+
24+
25+
26+
27+
#方法二
28+
i=1
29+
while i<10: #控制行,1到9
30+
j=1
31+
while j <= i: #控制每行显示的数量,1到9
32+
print("%d*%d=%d"%(j,i,i*j),end=' ') #输出
33+
j+=1 #每行显示的数量加1
34+
print("\n") #每一行结束换行
35+
i+=1 #行数加1
36+
37+
for i in range(1,10):
38+
print()
39+
for j in range(1,i+1):
40+
print('%d*%d=%d' % (j,i,i*j),end=' ')

01_base/练习/冒泡排序.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
'''
2+
给定一个列表,请你对列表的元素进行 从大到小排序 与从小到大排序
3+
'''
4+
5+
6+
list1 = [13, 22, 6, 99, 11, 0]
7+
8+
for a in range(len(list1)):
9+
for b in range(a,len(list1)):
10+
if list1[a] < list1[b]: #如果m大于了n
11+
list1[a] ,list1[b] = list1[b],list1[a]#交换位置
12+
print(list1)

01_base/练习/商余问题.py

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
'''
2+
学校有440人参加考试,1号考场有80个座位,要求座位号为0101--0180
3+
后面每个考场40个座位:
4+
2号考场考试号要求为0201--0240
5+
3号考场考试号要求为0301--0440
6+
后续考场以此类推,请你打印出来这些考场号吧
7+
8+
起始代码:
9+
for i in range(1,440):
10+
11+
'''
12+
13+
14+
for i in range(1,440):
15+
if i <= 80 :
16+
print('01{:0>2d}'.format(i))
17+
elif i <= 440:
18+
if i%40 == 0:
19+
print('{:0>2d}{:0>2d}'.format(i//40-1,40))
20+
else:
21+
print('{:0>2d}{:0>2d}'.format(i//40,i%40))

01_base/练习/大数分解.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
'''每个数字可以写成多个质数的乘积,给定一个数字,请你分解为多个质数'''
2+
3+
def fun(num, list=None):
4+
if list is None:
5+
list = []
6+
for i in range(2, num):
7+
while num % i == 0:
8+
list.append(i)
9+
num = int(num / i)
10+
if num > 1:
11+
fun(num)
12+
return list
13+
x = 9*5
14+
print(fun(x))

01_base/练习/平方和问题.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
'''两个数字的平方和是2022,请问这2个数分别是多少'''
2+
3+
for a in range(1,2022):
4+
if (2022 - a*a)**0.5 in range(1,2022):
5+
print(a)

01_base/练习/抽奖.py

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
"""名单 = ['叶子','月娜','娜月','月叶','叶月','叶娜','月子','娜叶','娜子']
2+
mychoice(名单)
3+
打卡要求:风变科技计划抽一次年终奖
4+
特等奖:1个组合课学习资格
5+
一等奖:2个电饭煲
6+
二等奖:4本python书
7+
请你根据提示写出具有对应功能的代码"""
8+
9+
10+
def mychoice(名单):
11+
import random
12+
中奖人员 = random.choice(名单) # 随机抽取一个元素
13+
print(中奖人员) # 打印出结果
14+
名单.remove(中奖人员) # 从名单中移除中奖人员【这样一个人就只能抽到一次】
15+
16+
17+
名单 = ['叶子', '月娜', '月娜2', '月娜3', '月娜4', '月娜5', '月娜6', '月娜7', '月娜8']
18+
19+
# for i in range(4): #奖品的等级
20+
# if i == 0: # 一等奖
21+
# print('恭喜以下同学获得:图书')
22+
# for i in range(2): #抽几个
23+
# mychoice(名单)
24+
# elif i == 1: # 二等奖
25+
# print('恭喜以下同学获得:xxxx')
26+
# for i in range(5): #抽几个
27+
# mychoice(名单)
28+
# elif i == 2:# 三等奖
29+
# print('恭喜以下同学获得:XXX')
30+
# for i in range(3):#抽几个
31+
# mychoice(名单)
32+
# else:
33+
# print('恭喜以下同学获得:XXX')
34+
# for i in range(3):#抽几个
35+
# mychoice(名单)

01_base/练习/数羊问题.py

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
'''
2+
编写一段代码,模拟我们数羊到入睡的过程:
3+
4+
5+
每数五只羊,就提问一次:睡着了吗?
6+
如果没有睡着,继续循环,并打印“继续数羊”。
7+
如果睡着了,则停止循环,并打印“终于睡着了”。
8+
'''
9+
10+
11+
i = 0
12+
while True:
13+
i += 1
14+
left_endpoint = 1 + 5 * ( i - 1 )
15+
right_endpoint = 1 + 5 * i
16+
for i in range(left_endpoint, right_endpoint):
17+
print(str(i)+'只羊')
18+
answer = input('睡着了吗?回答是或否:')
19+
if answer == '是':
20+
break
21+
print('继续数羊')
22+
print('终于睡着了')
23+
24+
#方法二
25+
睡觉的状态 = '还没睡'
26+
a = 0
27+
while 睡觉的状态 != '睡着': # 只要不是睡着,就继续数
28+
a +=1
29+
print(str(a)+'只羊')
30+
if a%9 == 0 : # %是取余数 每次数5只羊
31+
睡觉的状态 = input('睡着了嘛?')

01_base/练习/时钟问题.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
'''
2+
请从00:00依次打印出一天的时间
3+
示例:
4+
23 : 52
5+
23 : 53
6+
23 : 54
7+
23 : 55
8+
23 : 56
9+
23 : 57
10+
23 : 58
11+
23 : 59
12+
'''
13+
14+
15+
for 时钟 in range(24):
16+
for 分钟 in range(60):
17+
print(时钟, ':', 分钟)
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
"""
2+
小明拿到了一个电影+演员的数据名单,他想设计一个程序,要求:
3+
1.输入演员名
4+
2.如果演员出演了电影,则打印他+他出演的全部电影。程序结束
5+
3.如果演员没有出演电影,则打印查无此人。程序继续
6+
电影 = [
7+
'妖猫传',['黄轩','染谷将太'],
8+
'无问西东',['章子怡','王力宏','祖峰'],
9+
'超时空同居',['雷佳音','佟丽娅','黄轩']]
10+
"""
11+
12+
13+
14+
电影 = [
15+
'妖猫传',['黄轩','染谷将太'],
16+
'无问西东',['章子怡','王力宏','祖峰'],
17+
'超时空同居',['雷佳音','佟丽娅','黄轩']]
18+
# 如果查到了:打印出演员+【所有的】电影,循环结束
19+
# 如果没查到,就 循环继续,并且打印【查无此人】
20+
找到了吗 = 0
21+
while True:
22+
name = input('你要找的演员')
23+
for i in 电影:
24+
if name not in i :
25+
a = i #暂存---for 是逐一提取数据,并赋值
26+
else:
27+
print(name,'出演了',a)
28+
找到了吗 += 1
29+
if 找到了吗 != 0 : # 不等于 0 就代表它找到了
30+
break
31+
print('【查无此人】') # 1号位
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
'''
2+
要求:0-100,每次抽走奇数,打印剩余的那个数字
3+
'''
4+
5+
aList = []
6+
for i in range(0,2023):
7+
aList.append(i)
8+
9+
while len(aList)>1:
10+
aList = aList[1::2]
11+
print(aList)
12+
print(aList)

0 commit comments

Comments
 (0)