|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
基础知识
1、assert这个关键字我们称之为“断言”,当这个关键字后边的条件为假的时候,程序自动抛出AssertionError异常
2、Python 有一个成员资格运算符:in,用于检查一个值是否在序列中,存在为true,不存在为false
3、rang()函数的用法:
函数原型:range(start, end, scan):
参数含义:start:计数从start开始。默认是从0开始。例如range(5)等价于range(0, 5);
end:技术到end结束,但不包括end.例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
scan:每次跳跃的间距,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
4、break语句的作用是终止当前循环,跳出循环体。continue语句的作用是终止本轮循环并开始下一轮循环(前提是下一轮循环条件成立)
动手:
1、水仙花问题:一个三位数,如果它的各位数字之立方和等于该数本身,则称为水仙花数,如:153=1^3+5^3+3^3
甲鱼做法:
for i in range(100, 1000):
sum = 0
temp = i
while temp:
sum = sum + (temp%10) ** 3 #一句话概括了三个数之间的和
temp //= 10 # 注意这里要使用地板除哦~
if sum == i:
print(i)
自己的做法
num=range(100,1000)
for i in num :
x=int(i/100)
y=int(i%100/10)
z=int(i%10)
if (x**3 + y**3 +z**3 )== i:
print(i
2、三色球问题:有红、黄、绿3种颜色的球,其中红球3个,黄球3个,绿球6个,现将这12个球混放在一个盒子中,从中任意摸出8个球,编程计算摸出球的各种颜色搭配。
甲鱼的做法:
print('red\tyellow\tgreen')
for red in range(0, 4):
for yellow in range(0, 4):
for green in range(2, 7):
if red + yellow + green == 8:
# 注意,下边不是字符串拼接,因此不用“+”哦~
print(red, '\t', yellow, '\t', green)
注释:range(2, 7) 是产生 [2, 3, 4, 5, 6] 这 5 个数,绿球不能是 1 个,因为如果绿球是1的话,红球 + 黄球需要有 7 个才能符合题意,而红球和黄球每种只有 3 个,因此是 range(2,7)
自己做的:
red= range(0,4)
yellow= range(0,4)
green =range(2,7)
for x in red:
for y in yellow:
for z in green:
if (x+y+z)==8:
print ("x=%d"%x,"y=%d"%y,"z=%d"%z) |
评分
-
查看全部评分
|