Beginner does not mean easy.
看视频只是帮助了解概念、知道要做什么事情,真正的学习是各种姿势尝试使用所学知识。如果觉得直接上手mini project 太难,可以从 practice exercise 开始。
print type()
可以输出类型
py2和py3的除法规则不相同
为什么要用变量?
single equal is assignment, double equal is equality testing. 单个等号用于赋值,双等号用于判定是否相等
定义好之后以后执行的一段代码。
写一段函数:
def name(varible1,varible2):
头部,用于定义;冒号表示一段代码开始,接下来有同样缩进的代码就是body部分。定义函数之后还需要调用函数。函数就像一个代理,服务商,完成你想做的事情,只需要你提供需要加工的东西(变量值),然后在函数内部鼓捣一阵,交给你结果。
python的条件语句
if() :
codeblock
elif :
codeblock
else :
codeblock
事件
每个事件有handler。注册处理程序handler
事件队列机制
在函数内定义的都是局部变量. 何时用哪种?优先使用局部变量,这样不会影响全局。 py在函数内将变量自动识别未局部变量。那么怎样修改全局变量?声明全局变量:
def func1:
global num
num = 5
按照Mini-project development process:
创建 frame 和 input field
查找 doc 中 Graphic Modules 的 Frame 和 Control Objects 的说明,创建成功后(包括input的定义)运行可见对话框和输入框;
问题:input的label不支持中文
event handler input_guess(guess)
转换输入框中的字符串为数字(整型),然后 print 出来
初始化全局变量 secret_number
global secret_number secret_number = random.randrange(0, 100)
input_guess 函数比较大小输出结果
def input_guess(guess):
global secret_number
number_input = int(guess)
print "Your guess was: ",number_input
if secret_number > number_input :
print "Higher!"
elif secret_number < number_input :
print "Lower!"
else:
print "\(^o^)/~ Bingo!!"
修改引导语和ui
增加输入不为整数时的判断和提示
遇到一个坑:在函数内部,如果要判断传入的 str 是否可以转为 int,是先转后判断,还是先判断后转?陷入了一个死循环。后来找到了 isdigit()
函数,可以直接判断是否是数字,于是在转换成int之前,先判断是否为数字字符串:
if guess.isdigit():
number_input = int(guess)
print "Your guess was: ",number_input
if secret_number > number_input :
print "Nope!Higher!"
print ""
elif secret_number < number_input :
print "Nope!Lower!"
print ""
else:
print "\(^o^)/~ Bingo!!"
print ""
else:
print "Please input an integer!"
问题
google 搜索 怎么判断输入类型是数字,然后在doc中找到Test String for Digits
网站打不开,vpn翻墙后还是打不开。搜索到相关讨论: Codeskulptor 的保存/载入方法。用这个链接可以上传py文件,但依然打不开网站。看了果壳上的讨论http://www.codeskulptor.org/这个打开的好慢啊!!你们是不是这样的啊?似乎chrome的插件会有问题,但试了ff还是不行。
Troubleshooting saving and loading issues for CodeSkulptor
If you happen to be in China, please note that you may need to use a proxy or VPN. There's internet blocking in China that you'll have to work around. Jobin (a CTA who lives in China) will post a thread concerning this issue. 中国用户需要用代理或vpn
You can try using a different browser, different computer on the same network, and/or different network. This won't fix the issues, but MIGHT get you some additional information to work with. (This is still working with the issues listed in the FAQ) 尝试用不同浏览器(已试),不同电脑(台式win7笔记本mac已试)
There are some tips about specific settings for some browser plug-ins etc such as HTTPS:Everywhere that you should review. 浏览器插件问题
开启vpn后ok。