马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
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 就是个内置函数,不该用的。
|