python入门004课后作业
测试题:0: 无限循环,{:5_104:} 试了一下,电脑停不下来了,原因是 while 里面 的语句,因为没有任何输入 这个代码,所以 ‘C’代表的是true 所以一直运行打印 无限循环,我的妈呀
1:本来以为是无限,结果是10次
2: 10<cost and cost<50
3:可以的
4:可以
5:and 不一定需要括号
6:布尔运算符有个有趣的特性:只有在需要求值时才进行求值。举例来说,表达式x and y需要两个变量都为真时才为真,所以如果x为假,表达式就会立刻返回false,而不管y的值(事实上各个语言都有这个特性)。实际上,如果x为假,表达式会返回x得值----否则它就返回y的值。这种行为被称为短路逻辑(short-circuit logic)或惰性求值(lazy evaluaion):布尔运算符通常被称为逻辑运算符,就像你看到的那样第2个值有时“被短路了”。这种行为对于or来说也同样适用。在表达式x or y中,x为真时,它直接返回x的值,否则返回y值。注意,这意味着在布尔运算符之后的所有代码都不会执行。
这有什么用呢?它主要是避免了无用地执行代码,可以作为一种技巧使用,假设用户应该输入他/她的名字,但也可以选择什么都不输入,这时可以使用默认值‘<unknown>’。可以使用if语句,但是可以很简洁的方式:
name = raw_input('Please enter your name: ') or '<unknown>' 换句话说,如果raw_input语句的返回值为真(不是空字符串),那么它的值就会赋给name,否则将默认的'<unknown>'赋值给name。
这类短路逻辑可以用来实现C和Java中所谓的三元运算符(或条件运算符)
动动手:
0:import random
secret =random.randint(1,10)
print("---------^猜数字游戏改进版^----------")
temp=input("猜一猜强哥心里想的是哪一个数字?")
guess=int(temp)
if guess==secret:
print("你是强哥心里的蛔虫吗?")
print("哼,猜中了,也没有奖励!")
ifguess>secret:
print("哥,大了大了~")
i=2
while i:
print("你还有",i,"次机会")
temp=input("到底是什么数字呢?:")
guess=int(temp)
if guess>secret :
print("大了大了")
i=i-1
if guess<secret :
print("小了小了")
i=i-1
if guess==secret :
print("恭喜你猜中啦!")
break
if guess<secret:
print("哥,小了小了~")
i=2
while i:
print("你还有",i,"次机会")
temp=input("到底是什么数字呢?:")
guess=int(temp)
if guess>secret :
print("大了大了")
i=i-1
if guess<secret :
print("小了小了")
i=i-1
if guess==secret :
print("恭喜你猜中啦!")
break
print("游戏结束不玩啦~!~~")
但我觉得还不够完善 可以继续精简
1:
temp=input("请输入一个整数")
x=int(temp)
i=1
if x<=0:
print("您输入的值无效")
else:
while x:
print(i)
i=i+1
x=x-1
2:
temp=input("请输入一个整数")
x=int(temp)
y=x
while x:
print(" "*(x-1),"*"*x)
x=x-1
3:
这一课学到的知识使我发掘了学习python的信心和乐趣,其一,与C语言不同的语法方式,节省了很多时间以及便于理解,例如打印输出图形时,直接“*”*i 就可以了,不费脑细胞
其二,一些快捷键: 选中按住TAB整体后移 输出既有字符串又有变量的语句时 中间用 , 隔开
python 不能使用i-- 只能用i=i-1
while i 可以循环 i 次
最后那句“while i 可以循环 i 次”不对吧,要是i是大于 0的数,是无限循环 课后作业我们都是都直接在帖子里回复 冰魂雪魄 发表于 2020-1-30 17:30
最后那句“while i 可以循环 i 次”不对吧,要是i是大于 0的数,是无限循环
不是的 你可以尝试一下 while 多少就是循环几次 冰魂雪魄 发表于 2020-1-30 17:31
课后作业我们都是都直接在帖子里回复
但是 不知道怎么能够看自己在课后作业发的贴子啊,我找不到了怕丢 就只能复制发到个人帖子里 最强骚妲 发表于 2020-3-1 18:02
但是 不知道怎么能够看自己在课后作业发的贴子啊,我找不到了怕丢 就只能复制发到个人帖子里
https://fishc.com.cn/forum.php?mod=guide&view=my&type=reply
这里可以找到自己的回帖,但是确实不能查找特定主题帖子的回帖 最强骚妲 发表于 2020-3-1 16:01
不是的 你可以尝试一下 while 多少就是循环几次
试了啊
while 5:
print ('Hello')
这样会一直不停的打印Hello
{:10_329:} 冰魂雪魄 发表于 2020-3-1 22:07
试了啊
这样会一直不停的打印Hello
是python 么 我再试试把,也许我错了,但是我记得是这样运行成功的 最强骚妲 发表于 2020-3-20 23:34
是python 么 我再试试把,也许我错了,但是我记得是这样运行成功的
5不是非零值,所以在while条件中就被被判断为True,所以whil 5 和 while True的效果是一样的
页:
[1]