第一节:我和python的第一次亲密接触
0. Python 是什么类型的语言?
答:脚本语言(Scripting language)是电脑编程语言,因此也能让开发者藉以编写出让电脑听命行事的程序。以简单的方式快速完成某些复杂的事情通常是创造脚本语言的重要原则,基于这项原则,使得脚本语言通常比 C语言、C++语言 或 Java 之类的系统编程语言要简单容易。
也让脚本语言另有一些属于脚本语言的特性:
- 语法和结构通常比较简单
- 学习和使用通常比较简单
- 通常以容易修改程序的“解释”作为运行方式,而不需要“编译”
- 程序的开发产能优于运行性能
一个脚本可以使得本来要用键盘进行的相互式操作自动化。一个Shell脚本主要由原本需要在命令行输入的命令组成,或在一个文本编辑器中,用户可以使用脚本来把一些常用的操作组合成一组串行。主要用来书写这种脚本的语言叫做脚本语言。很多脚本语言实际上已经超过简单的用户命令串行的指令,还可以编写更复杂的程序。
1. 如果我需要在一个字符串中嵌入一个双引号,正确的做法是?
答:你有两个选择:可以利用反斜杠(\)对双引号转义:\",或者用单引号引起这个字符串。例如:‘ I l"o"ve fishc.com ‘,或者"I l\"o\"ve fishc.com".
第二节:用Python设计的第一个游戏
1.看python3中提供了多少内置函数BIF?
答:在 Python 或 IDLE 中,输入 dir(__builtins__) 可以看到 Python 提供的内置方法列表(注意,builtins 前后是两个下划线哦)其中小写的就是 BIF。如果想具体查看某个 BIF 的功能,比如 input(),可以在 shell 中输入 help(input),就会得到这个 BIF 的功能描述。哦,答案应该是 68 个。
2. 你听说过“拼接”这个词吗?
答:在一些编程语言,我们可以将两个字符串“相加”在一起,如:‘I‘ + ‘Love‘ + ‘FishC‘ 会得到 ‘ILoveFishC‘,在 Python 里,这种做法叫做拼接字符串。
第三节:插曲之变量与字符串
1.Python中变量命名不能以数字开头
2.去变量名时不要与Python中的内联函数名相同
第四节:改进我们的小游戏
1.在Python中一行打印多个语句
答:语句之间用分号隔开即可,不妨试试:
>>> print(‘I love fishc‘);print(‘very much!‘)
2. Python3 中,一个语句分成多行书写
答:一行过长的语句可以使用反斜杠或者括号分解成几行,不妨试试:
或者
这种行为被称为短路逻辑(short-circuit logic)或者惰性求值(lazy evaluation),这种行为同样也应用与 or 操作符,这个后边的课程小甲鱼会讲到,不急。
实际上,Python 的做法是如果 x 为假,表达式会返回 x 的值(0),否则它就会返回 y 的值(例子参考楼上那题)。
第五节:Python的数据类型
5.4 “四舍五入”结果为:5,int(5.4+0.5) == 5
5.6 “四舍五入”结果为:6,int(5.6+0.5) == 6
s.isalnum() 所有字符都是数字或者字母,为真返回 Ture,否则返回 False。
s.isalpha() 所有字符都是字母,为真返回 Ture,否则返回 False。
s.isdigit() 所有字符都是数字,为真返回 Ture,否则返回 False。
s.islower() 所有字符都是小写,为真返回 Ture,否则返回 False。
s.isupper() 所有字符都是大写,为真返回 Ture,否则返回 False。
s.istitle() 所有单词都是首字母大写,为真返回 Ture,否则返回 False。
s.isspace() 所有字符都是空白字符,为真返回 Ture,否则返回 False。
第六节:Python之常用操作符
答案是:4
not or and 的优先级是不同的:not > and > or
我们按照优先级给它们加上括号:(not 1) or (0 and 1) or (3 and 4) or (5 and 6) or (7 and 8 and 9)
== 0 or 0 or 4 or 6 or 9
== 4
为啥是 4?
大家还记得第四讲作业提到的“短路逻辑”吗?3 and 4 == 4,而 3 or 4 == 3。
所以答案是:4
答案是:1.0,而3.0/2.0是1.5!
第七、八节:了不起的分支结构和循环
什么情况下我们会需要这样的代码呢?当我们在测试程序的时候就很好用,因为与其让错误的条件导致程序今后莫名其妙地崩溃,不如在错误条件出现的那一瞬间我们实现“自爆”。
一般来说我们可以用Ta再程序中置入检查点,当需要确保程序中的某个条件一定为真才能让程序正常工作的话,assert关键字就非常有用了。
Python 有一个成员资格运算符:in,用于检查一个值是否在序列中,如果在序列中返回 True,否则返回 False。
3.Python支持a<b<c,相当于a<b and b<c(与C语言不同)
第九节:了不起的分支和循环
while True:
break
print(1)
print(2)
break
print(3)会打印:
2
3continue语句的作用是终止本轮循环并开始下一轮循环(这里要注意的是:在开始下一轮循环之前,会先测试循环条件)。
sum = 0
temp = i
while temp:
sum = sum + (temp%10) ** 3
temp //= 10 # 注意这里要使用地板除哦~
if sum == i:
print(i)点评:得学会这种取一个多位数的每位上数字的方法!4.‘\t‘是两个字符间空出一个Tab的距离,功能类似于Tab
4.当要求输入的文字与输入变量的语句分开执行时,可以在print中加end = " ",是输入值紧跟文字