2017.02

For Flask, to use the decorator, apply it as innermost decorator to a view function. When applying further decorators, always remember that the route() decorator is the outermost.

2017.01

HTML的<select></select>标签可以实现下拉选择框。

<select class="form-control">
<option value="admin" selected>admin</option>
<option value="admin">viewer</option>
<option value="admin">guest</option> </select>

运行效果如下:



admin

viewer

guest


通过二进制的位操作,可以简化很多问题的分析。

例如现在有四个角色,分别为:读者,作者,编辑和管理员。有四个不同的权限使用四位的二进制数表示:

  • 阅读权限:0001
  • 写入权限:0010
  • 修改权限:0100
  • 删除权限:1000

每个角色的权限如下:

  • 读者只能读,所以权限是0001
  • 作者能读也能写,所以是0011
  • 编辑能读能写能修改,所以是0111
  • 管理员能读能写能修改能删除,所以是1111

要判断一个角色有哪些权限,人眼可以直接看对应的位置上面是0还是1,是0就是没有权限,是1就是有权限。在程序里面可以通过和对应权限的四位二进制数取位与操作。例如,0111编辑是否有写权限?因为0111 & 0010 = 0010 所以有写权限。只要角色的四位二进制数和权限的四位二进制数取位与,得到的结果还是权限的四位二进制数,那么就有这个权限。


正常情况下人有十根手指,所以一共可以计数1023个,但是一般在计数到第4个数的时候你就会挨打。明白二进制的自然知道我说的是什么意思。不明白二进制的,请看下面的动图:


Markdown在写作方面有非常好的优势,可以让写作的人不用关心格式,从而专注于要写的内容。但是Markdown不能进行缩进,这导致在一些大纲类的文本信息的显示上不太友好。Workflowy的出现可以解决这个问题。Workflowy只支持文本,界面极其简洁:



通过它来创建一个大纲,有助于理清思路。


在HTML的<form></form>表单中,有一个属性叫做action,它的值是空或者是一个URL的相对路径或绝对路径。如果为空,表单将会被提交到现在这个页面的URL;如果不为空,表单将会被提交到action的值对应的页面来处理。

理解这一点,那些喜欢在Flask中,把GET和POST写到一个Route,同时又要为GET带参数的人,需要特别注意。因为当你POST的时候,如果action不为空,参数可能会被丢失。


如果你想在局域网中共享一个文件,你可以通过Python 3快速完成:

  1. 打开终端或者CMD
  2. cd 进入你需要分享的文件所在的文件夹
  3. 输入python3 -m http.server回车
  4. 在另一台电脑上打开浏览器,输入上一台电脑的ip地址:8000例如:192.168.2.13:8000
  5. 下载文件

在Python中,使用yield实现生成器。生成器的性质是只有在被迭代的时候才运行其内部的代码。这样可以大大降低内存的占用。除此之外,yield还可以接收参数供生成器内部使用。

def generator(top):
index = 0
while index <= top:
value_from_out = yield index ** 2
print('来自外面的值为:{}'.format(value_from_out))
index += 1 power_2 = generator(10)
print(next(power_2))
print(next(power_2))
print(power_2.send("next(power_2) 相当于power_2.send(None)"))
print(next(power_2))
print(power_2.send('代码在函数和这里来回跳。'))

输出结果为:

0
来自外面的值为:None
1
来自外面的值为:next(power_2) 相当于power_2.send(None)
4
来自外面的值为:None
9
来自外面的值为:代码在函数和这里来回跳。
16

以上的运行方式,和协程非常的相似。


逆波兰式通过栈来实现对表达式的运算。例如:

中缀表达式: 5 + ((1 + 2) * 4) − 3

逆波兰式:5 1 2 + 4 * + 3 −


使用调度场算法可以将中缀表达式转换为逆波兰式。调度场算法是通过栈来实现的。操作数直接输出,符号需要判断优先级来判断应该直接压栈还是直接输出或者应该先将栈顶元素输出再压栈。

技巧收集-W1701的更多相关文章

  1. DelphiXE2 DataSnap开发技巧收集

    DelphiXE2 DataSnap开发技巧收集 作者:  2012-08-07 09:12:52     分类:Delphi     标签: 作为DelphiXE2 DataSnap开发的私家锦囊, ...

  2. C#WebBrowser控件使用教程与技巧收集--苏飞收集

    C#WebBrowser控件使用教程与技巧收集--苏飞收集 先来看看常用的方法 Navigate(string urlString):浏览urlString表示的网址 Navigate(System. ...

  3. T-SQL技巧收集——拆分字符串

    原文:T-SQL技巧收集--拆分字符串 在开发中,很多时候都需要处理拆分字符串的操作.下面收集了几种方法供大家分享,其中的逗号可以改为多种有需要的符号,但是不能针对多种符号同时存在的例子.有待各位补充 ...

  4. sqlmap注入技巧收集

    收集了一些利用Sqlmap做注入测试的TIPS,其中也包含一点绕WAF的技巧,便于大家集中查阅,欢迎接楼补充.分享. TIP1 当我们注射的时候,判断注入 http://site/script?id= ...

  5. VS2008调试技巧收集备用

    VS2005调试技巧集合 http://blog.csdn.net/rainylin/archive/2007/09/06/1775125.aspx 下面有从浅入深的6个问题,您可以尝试回答一下 一个 ...

  6. Eclipse使用技巧收集

    因为学习Java相关,对Eclipse这个开发工具用的不习惯,许多操作以及快捷键在百度得到解决后下次又忘记了.有时使用VS又混淆了它的快捷键操作.所以写个备忘录持续更新收集平时遇到的操作. 导入项目, ...

  7. Sqlmap注入技巧收集整理

    TIP1 当我们注射的时候,判断注入 http://site/script?id=10http://site/script?id=11-1 # 相当于 id=10http://site/script? ...

  8. IntelliJ IDEA重构技巧收集

    https://segmentfault.com/a/1190000002488608(重命名文件) http://www.jianshu.com/p/ab298b46bf50(快速生成方法) htt ...

  9. javascript小技巧-js小技巧收集(转)

    本文转载自:http://blog.csdn.net/ocean20/article/details/2498699 每一项都是js中的小技巧,但十分的实用! 1.document.write(&qu ...

随机推荐

  1. Cocos2dx 学习笔记整理----场景切换

    据说Cocos2dx场景切换的方法有32种:cocos2dx 常见的32种切换场景的动画 无需一一求证,只需要知道切换场景需要怎么做就行了. 作为导演CCDirector,切换场景的事情当然归它管了. ...

  2. 关于JAVA中hashCode

    hash code 即散列码根据对象计算出的一个整型值,散列码是没有规律的. 如果两个对象相等(equal() 返回true),则hashCode一定相等,如果两个对象hashCode相等,则对象不一 ...

  3. 字典NSDictionary的常见用法

    // 动态获取字典的第一个典 NSString *firstKey = responseObject.keyEnumerator.nextObject;

  4. ORACLE odbc驱动相关

    驱动下载 http://www.oracle.com/technetwork/topics/winsoft-085727.html http://www.oracle.com/technetwork/ ...

  5. vs2012中的小技巧

    解除起始页: 网站(或者叫项目)-属性-启动选项-使用当前页 发布项目: 有些文件在发布的时候,不能发布到指定文件夹中,所以要手动修改该文件的属性 修改两处: 复制到输出目录:始终复制 生成操作:内容

  6. Zynq和microblaze的区别

    Zynq钩中PS端的外设之后不需要初始化过程,但是如果在microblaze中连接外设之后需要有初始化过程.

  7. UVa 10176 - Ocean Deep ! - Make it shallow !!

    题目大意:判断一个很大的二进制能否被131071整除.在二进制转十进制的过程中不断取模,最后判断结果是否是0就可以了. #include <cstdio> #include <cst ...

  8. ajax 跨域了 cors

    <?php /** * Author: humanhuang * Date: 13-12-17 */ header('Access-Control-Allow-Origin:*'); heade ...

  9. 云脉推出表格识别API接口可以自助接入

    针对如今市场上对于海量票据信息的录入需求,近期厦门云脉技术有限公司推出票据识别相关的产品与服务,更是在云脉OCR SDK开发者平台上上线表格识别API接口,供广大开发者和集成商自助接入.为了降低财务系 ...

  10. 如何使用Grunt(好文)

    Grunt 是什么? Grunt 基于Node.js之上,是一个以任务处理为基础的命令行工具,可以减少优化开发版本为发布版本所需的人力和时间,从而加速开发流程.它的工作原理是把这 些工作整合为不同的任 ...