0. 以下哪个变量的命名不正确?为什么?
(A) MM_520 (B) _MM520_ (C) 520_MM (D) _520_MM
C,数字不能在首位
1. 在不上机的情况下,以下代码你能猜到屏幕会打印什么内容吗?
- >>>myteacher = '小甲鱼'
- >>>yourteacher = myteacher
- >>>yourteacher = '黑夜'
- >>>print(myteacher)
2. 在不上机的情况下,以下代码你能猜到屏幕会打印什么内容吗?
- >>> myteacher = '小甲鱼'
- >>> yourteacher = myteacher
- >>> myteacher = '黑夜'
- >>> print(yourteacher)
3. 在不上机的情况下,以下代码你能猜到屏幕会打印什么内容吗?
- >>>first = 520
- >>>second = '520'
- >>>first = second
- >>>print(first)
会打印:520,注:这里没有单引号括起来,但是他是一个字符串,因为使用 print() 打印,所以不包含单引号。可以试试直接>>>first,它是一个字符串的。
4. 除了使用反斜杠(\)进行字符转义,还有什么方法可以打印:Let's go! 这个字符串?
此题没想出来
>>>"Let's go!"
5. 如果非要在原始字符串结尾输入反斜杠,可以如何灵活处理?
在结尾添加+“\”。此题答案错误
>>>str = r'C:\Program Files\FishC\Good''\\'
6. 在这一讲中,我们说变量的命名需要注意一些地方,但小甲鱼在举例的时候貌似却干了点儿“失误”的事儿,你能看得出小甲鱼例子中哪里有问题吗?
>>> print = 1
>>> print("I love FishC")
Traceback (most recent call last):
File "<pyshell#37>", line 1, in <module>
print("I love FishC")
TypeError: 'int' object is not callable
动动手:
0. 还记得我们第一讲的动动手的题目吗?这一次要求使用变量,计算一年有多少秒?
提示:可以以 DaysPerYear(每年天数),HoursPerDay(每天小时数),MinutesPerHour(每小时分钟数),SecondsPerMinute(每分钟秒数)为变量名。
DaysPerYear=365 HoursPerDay=24 MinutesPerHour=60 SecondsPerMinute=60 time=DaysPerYear*HoursPerDay*MinutesPerHour*SecondsPerMinute time 或者print(time)
输出:31536000
1. 关于最后提到的长字符串(三重引号字符串)其实在 Python3 还可以这么写,不妨试试,然后比较下哪种更方便?
- >>> string = (
- "我爱鱼C,\n"
- "正如我爱小甲鱼,\n"
- "他那呱唧呱唧的声音,\n"
- "总缠绕于我的脑海,\n"
- "久久不肯散去……\n")
string = ( "我爱鱼C,\n" "正如我爱小甲鱼,\n" "他那呱唧呱唧的声音,\n" "总缠绕于我的脑海,\n" "久久不肯散去……\n") print(string)
输出
我爱鱼C,
正如我爱小甲鱼,
他那呱唧呱唧的声音,
总缠绕于我的脑海,
久久不肯散去……
2. 请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好方式!
0. 请问以下代码会打印多少次“我爱鱼C!”
- while 'C':
- print('我爱鱼C!')
造成死循环的原因是 while 后边的条件永远为真(True),在 Python 看来,只有以下内容会被看作假(注意冒号括号里边啥都没有,连空格都不要有!):False None 0 "" '' () [] {}
其他一切都被解释为真!
1. 请问以下代码会打印多少次“我爱鱼C!”
- i = 10
- while i:
- print('我爱鱼C!')
- i = i - 1
2. 请写出与 10 < cost < 50 等价的表达式
10<cost and cost<50
(10 < cost) and (cost < 50) 加入括号
3. Python3 中,一行可以书写多个语句吗?
可以,一行过长的语句可以使用反斜杠或者括号分解成几行
>>> 3 > 4 and \1 < 2
4. Python3 中,一个语句可以分成多行书写吗?
不可以
5. 请问Python的 and 操作符 和C语言的 && 操作符 有何不同?【该题针对有C或C++基础的朋友】
有图有真相(C\C++ VS Python):
<ignore_js_op>
VS
<ignore_js_op>
6. 听说过“短路逻辑(short-circuit logic)”吗?
举例来说,表达式x and y需要两个变量都为真时才为真,所以如果x为假,表达式就会立刻返回false,而不管y的值(事实上各个语言都有这个特性)。 实际上,如果x为假,表达式会返回x得值----否则它就返回y的值。 这种行为被称为短路逻辑(short-circuit logic)或惰性求值(lazy evaluaion):布尔运算符通常被称为逻辑运算符,就像你看到的那样第2个值有时“被短路了”。
动动手:
0. 完善第二个改进要求(为用户提供三次机会尝试,机会用完或者用户猜中答案均退出循环)并改进视频中小甲鱼的代码。
print('---------------------------------来玩一个游戏吧----------------------------') i=0 while i<3: i+=1 temp =input('请输入代表心情的数字:') guess=int (temp) if guess==8: print("你是猜对了!") print("你是小甲鱼的蛔虫吗?") break else: print("你是猜错了!") print("游戏结束,期待下次您的选择.")
import random times = 3 secret = random.randint(1,10) print('------------------我爱鱼C工作室------------------') # 这里先给guess赋值(赋一个绝对不等于secret的值) guess = 0 # print()默认是打印完字符串会自动添加一个换行符,end=" "参数告诉print()用空格代替换行 # 嗯,小甲鱼觉得富有创意的你应该会尝试用 end="JJ"? print("不妨猜一下小甲鱼现在心里想的是哪个数字:", end=" ") while (guess != secret) and (times > 0): temp = input() guess = int(temp) times = times - 1 # 用户每输入一次,可用机会就-1 if guess == secret: print("我草,你是小甲鱼心里的蛔虫吗?!") print("哼,猜中了也没有奖励!") else: if guess > secret: print("哥,大了大了~~~") else: print("嘿,小了,小了~~~") if times > 0: print("再试一次吧:", end=" ") else: print("机会用光咯T_T") print("游戏结束,不玩啦^_^")
问题1:temp =input('请输入代表心情的数字:'guess=int (temp)这2行放在了while外面,i=0的下面,每次只显示1次
2.i+=1写成了i+=1.python一直执行,用ctrl+c结束运行
3.引入了break,放在了else后面,错误
4.最后一句print语句总是写错位置,运行报错,调整后才正确
1. 尝试写代码实现以下截图功能:
<ignore_js_op>
i=0 temp =input('请输入一个整数:') guess=int (temp) while i<guess: i+=1 print(i)
问题1:注意print位置,如果和while对齐,只打印输入数字
2. 尝试写代码实现以下截图功能:
<ignore_js_op>这个不会
temp = input('请输入一个整数:') number = int(temp) while number: i = number - 1 while i: print(' ', end = '') i = i - 1 j = number while j: print('*', end = '') j = j - 1 print() number = number - 1
3. 请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好方式!