Python中的yield
如果函数中包含yield关键字,那么这个函数就不再是一个普通函数,而是一个generator。而变成generator的函数在每次调用next()的时候执行遇到yield语句返回,再次执行时从上一次返回的yield语句继续执行
1 | def fib(max): |
>>> o = fib(1000)
>>> o.next()
1
>>> o.next()
1
>>> o.next()
2
>>> o.next()
3
>>> o.next()
如果函数中包含yield关键字,那么这个函数就不再是一个普通函数,而是一个generator。而变成generator的函数在每次调用next()的时候执行遇到yield语句返回,再次执行时从上一次返回的yield语句继续执行
1 | def fib(max): |
>>> o = fib(1000)
>>> o.next()
1
>>> o.next()
1
>>> o.next()
2
>>> o.next()
3
>>> o.next()
Shell是一个程序,它接收从键盘输入的命令,然后把命令传递给操作系统去执行,几乎所有的Linux发行版都提供了一个名为bash的程序,bash是Shell的一种,是Bourne Again Shell的缩写,是Shell的增强版。
一个简单的带动画的颜色选择Dialog
作为码农,高效的排版是必不可缺的,作为Markdown的重度依赖者,今天发现了一个插件,可以帮助我在Chrome上任何的使用。
Android官方有提供CountDownTimer类可以帮助我们很好的实现倒计时功能
Jar包的处理相对简单,将Jar包复制到lib文件夹中,然后右击Jar包选择add as a library即可导入。
删除时,需要先删除build.gradle中的语句,再删除Jar包

一般新的开源库在其README.md中都会有相应连接,比如FlatUI,在其GitHub页面可以得到以下内容
要将上面内容添加到项目中的build.gradle中,切勿添加到全局的build.gradle文件中去
下载开源库后,放置在app目录同级的目录下,编辑setting.gradle文件加入:开源库文件名,例如在app同级目录下放置了volley的开源文件夹,编辑setting.gradle的内容为
1 | include ':app',":volley" |
之后再app目录下的build.gradle文件下,在dependencies{}节点下加入:
1 | compile project(':volley') |
效果
1 | public class AnimationUtils { |
Sublime Text支持大量插件,Package Control能够帮助我们管理这些插件,它可以方便的浏览、安装和卸载Sublime Text中的插件
1 | import urllib.request,os,hashlib; h = '7183a2d3e96f11eeadd761d777e62404' + 'e330c659d4bb41d3bdf022e94cab3cd0'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by) |
Ctrl + Shift + P打开命令板Ctrl + Enter在当前行下面增加一行并跳至该行Ctrl + Shift + Enter在当前行上增加一行并跳至该行Ctrl + ←/→逐词移动Ctrl + Shift + ←/→逐词选择Ctrl + ↑/↓移动显示区域Ctrl + Shift + ↑/↓移动当前行Ctrl + D选择当前光标所在的词并高亮该词出现的位置,再次按下选择该词下次出现的位置Ctrl + K在多重选词的过程中进行跳过,使用Ctrl + U进行回退,使用Esc退出多重编辑
Ctrl + Shift + L将当前选中区域打散,然后进行同时编辑
Ctrl + J将当前选中的区域合并成一行
Sublime Text的查找功能可以分为快速查找、标准查找、多文件查找
使用Shift + ←/→或者Ctrl + D选中关键字,然后使用F3跳到其下一个出现的位置,Shift + F3跳到其上一个出现的位置,Alt + F3可以选中其出现的所有位置
使用Ctrl + F调出搜索框进行搜索
使用Ctrl + H调出替换框,Ctrl +_Shift + H替换当前关键字,Ctrl + Alt + H替换所有匹配关键字
Alt + C切换大小写敏感模式Alt + W切换整字匹配模式Ctrl + Shift + F开启多文件搜索&替换
Ctrl + P会列出当前打开的文件(或者是当前文件夹的文件),输入文件名然后Enter跳转至该文件。
Ctrl + R会列出当前文件中的符号(例如类名和函数名,但无法深入到变量名),输入符号名称Enter即可以跳转到该处。此外,还可以使用F12快速跳转到当前光标所在符号的定义处(Jump to Definition)。
Ctrl + G然后输入行号以跳转到指定行。
在Ctrl + P匹配文件后,可以进行后续输入以跳转到更精确的位置
@符号跳转:输入@demo跳转到demo符号所在的位置# 关键字跳转:输入# keyword跳转到keyword所在的位置:行号跳转:输入:12跳转到文件的第12行。
用Ctrl + K, Ctrl + B显示或隐藏侧栏,使用Ctrl + P快速跳转到文件夹里的文件。
Ctrl + Shift + N创建一个新窗口Ctrl + N在当前窗口创建一个新标签,Ctrl + W关闭当前标签,Ctrl + Shift + T恢复刚刚关闭的标签。Alt + Shift + 2进行左右分屏,Alt + Shift + 8进行上下分屏,Alt + Shift + 5进行上下左右分屏(即分为四屏)。Ctrl + 数字键跳转到指定屏,使用Ctrl + Shift + 数字键将当前屏移动到指定屏F11 全屏Shift + F11 切换无干扰全屏手动格式化使用Ctrl + [向左缩进,Ctrl + ]向右缩进,Ctrl + Shift + V以当前缩进粘贴代码
此外也可以使用插件实现自动缩进和智能对齐
Sublime Text一直存在一个Bug:中文输入框不跟随。
解决方法是安装IMESupport插件,之后重启Sublime Text问题就解决了。
模块(module)可以更好的组织已有的程序
1 | dic = {'zoe':1,'joy':2,'tom':3} |