|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
第2讲 用Python设计第一个游戏
我的Python笔记布局: I. 上讲回顾; II. 本讲内容提要和关键词; III. 本讲详细内容; IV.课后作业; V. 本讲总结
I. 上讲回顾:
print用法; \n表回车,但要在" "内; 可以字符乘以*number,但不可以字符+number; Python 数字运算没有位数限制
II. 本讲提要:
if else; Built in Function 关键词: BIF; builtins; help( );if; else
III. 本讲详细内容:
- # 我们的游戏最初版:
- print("---I love fishc.com---")
- temp = input("Guess which number I am thinking?")
- guess = int(temp)
- if guess == 8:
- print('Genius, you!')
- print('No prize however...')
- else:
- print("No, should be 8.")
- print('GAME OVER')
复制代码- ---I love fishc.com---
- Guess which number I am thinking?7
- No, should be 8.
- GAME OVER
复制代码
BIF: Built in function, eg. int; input etc.
- dir(__builtins__)# note: two hipen _ _ connected.
- len(dir(__builtins__))
复制代码
152
Help on method raw_input in module ipykernel.kernelbase:
raw_input(prompt='') method of ipykernel.ipkernel.IPythonKernel instance
Forward raw_input to frontends
Raises
------
StdinNotImplentedError if active frontend doesn't support stdin.
IV. 课后作业:
http://bbs.fishc.com/forum.php?m ... peid%26typeid%3D398
0). 什么是BIF?
BIF: Built in Function 内置函数
1). 怎样数一数Python3 提供了多少个BIF?
- dir(__builtins__)
- len(dir(__builtins__))
复制代码
2) 在Python看来,’FishC‘ 和’fishc‘一样吗 ?
- print("FishC")
- print("fishc") #不一样
复制代码
3) 在小甲鱼看来,python中什么最重要?
indentation 缩进
4) 有没有好办法解决=和==混淆的问题?
Python中不允许if 条件赋值,即if c=1 会语法错误报错,只可能if c==1
5)你听说过拼接这个词吗?
我答:python中拼接是指:将2个字符串相加在一起
动动手:1. 编写程序hello.py,让用户输入姓名:
- temp = input("请输入姓名:")
- print("你好, "+ temp + "!")
复制代码
2.请用户输入1-100间的数字,符合要求的输出“好漂亮”,不符合要求的输出“不好看。。。”
- temp = input("请输入1-100的一个数字:")
- number = int(temp)
- if 1 < number < 100:
- print("好漂亮")
- else:
- print("不好看。。。")
复制代码
V. 本讲总结
BIF;内置函数;input(); temp = int();
if else;
indentation
第三讲 小插曲之变量与字符串
I. 上讲回顾:
Build in function; dir(); help(); if else
II. 本讲提要:
变量;""" """; \ 转义符号; r
III. 本讲详细内容:
变量:把名字贴在值上
- teacher = '小甲鱼'
- print(teacher)
- teacher = '老甲鱼'
- print(teacher)
复制代码
- first = 3
- second = 8
- third = first + second
- print(third)
复制代码
- myteacher = '小甲鱼'
- yourteacher = '黑夜'
- ourteacher = myteacher + yourteacher #字符串加字符串,为拼接
- print(ourteacher)
复制代码
需要注意的地方:
#1. 使用变量时必须先赋值;
#2. 变量名可以包括字母、数字、下划线,但不能以数字开头(受C语言影响,因为Python是用C语言写的。
#3. 尽量给变量取一个专业些的名字;
#4. 字母大小写不同;
#5. = 是赋值的意思,必须是左边是名字,右边是值,写反是错误的。
字符串:引号内的东西,字符串也叫文本。文本和数字截然不同。
单引号或双引号都行。
若字符串中需同时出现单引号和双引号:1)用转义符号:\ "let\'s go" 2) 第二种:"let's go"
- str = 'C:\now'
- print(str)
复制代码
\被认为是回车了,怎么办?
- str = 'C:\\now'
- print(str)
复制代码
- # 虽可以,但不方便;更好的方法: 加 r 在整体之外
- str = r'C:\now'
- print(str)
复制代码
字符串末尾不能有\,非要有的话加r(在字符串之前) + '\\'(在字符串末尾)
""" """ 三重引号可放多行内容:
- str = """我爱变量,
- 正如我爱数学,
- 他那呱唧呱唧
- 的声音,
- 总缠绕于脑海
- 不肯散去
- """
- print(str)
复制代码
时刻注意切换为英文
IV. 课后作业:
0. (C) 520_MM 命名不正确,因为python中变量名不能以数字开头
1. 不上机的情况下,你能判断下列打印结果吗?
- #1.
- myteacher = '小甲鱼'
- yourteacher = myteacher
- yourteacher = '黑夜'
- print(myteacher)
复制代码
判断原则:左边为名字,右边是赋值,所以问到my teacher这个名字时,应显示它被赋予的值,只有一个,就是’小甲鱼‘
2. 不上机的情况下,你能判断下列打印结果吗?
- #2.
- myteacher = '小甲鱼'
- yourteacher = myteacher
- myteacher = '黑夜'
- print(yourteacher)
复制代码
判断原则:同理,左边为名字,右边是赋值,所以问到your teacher这个名字时,应显示它被赋予的值,它被赋予和第一个myteacher相同的值,后来myteacher的值变了,相当于把my teacher这个tag放在其他物品上了,但yourteacher这个tag仍在小甲鱼上不变,所以yourteacher仍为’小甲鱼‘
3. 不上机的情况下,你能判断下列打印结果吗?
- #3.
- first = 520
- second = '520love'
- first = second
- print(first)
复制代码
520love
#4.除了使用反斜杠\进行字符转义,还有什么办法打印:let's go 这个字符串?
print("let's go!")
#如果非要在原始字符串结尾输入反斜杠,可以如何灵活处理?
#即加r + '\\'
- str = r'C:\program\fishc\good''\\'
- print(str)
复制代码
- # 动动手:
- DaysPerYear = 365
- HoursPerDay = 24
- MinutesPerHour = 60
- SecondPerMinute = 60
- result = DaysPerYear * HoursPerDay * MinutesPerHour * SecondPerMinute
- print(result)
复制代码
V. 本讲总结:
变量:不能以数字开头;左名右值;转义字符\区分' and ";但\不能在字符串末尾;若非要有,则用r + '\'
“”“”“”三重引号,在里面的内容可以直接转行。也可以用" "加,\n的方式转行。
r 加在整个字符串前边,用来保留含有\的字符串原意。
不应用内置函数的名字来给自己的变量命名,否则会有BUG. 例如今天的str 就是个内置函数,不该用的。
|
评分
-
查看全部评分
|