Flask介绍(轻量级的框架,非常快速的就能把程序搭建起来)

Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请求并对请求进行预处理,然后触发Flask框架,开发人员基于Flask框架提供的功能对请求进行相应的处理,并返回给用户,如果要返回给用户复杂的内容时,需要借助jinja2模板来实现对模板的处理,即:将模板和数据进行渲染,将渲染后的字符串返回给用户浏览器。

“微”(micro) 并不表示你需要把整个 Web 应用塞进单个 Python 文件(虽然确实可以 ),也不意味着 Flask 在功能上有所欠缺。微框架中的“微”意味着 Flask 旨在保持核心简单而易于扩展。Flask 不会替你做出太多决策——比如使用何种数据库。而那些 Flask 所选择的——比如使用何种模板引擎——则很容易替换。除此之外的一切都由可由你掌握。如此,Flask 可以与您珠联璧合。

默认情况下,Flask 不包含数据库抽象层、表单验证,或是其它任何已有多种库可以胜任的功能。然而,Flask 支持用扩展来给应用添加这些功能,如同是 Flask 本身实现的一样。众多的扩展提供了数据库集成、表单验证、上传处理、各种各样的开放认证技术等功能。Flask 也许是“微小”的,但它已准备好在需求繁杂的生产环境中投入使用。

- 和django的比较
django:无socket,依赖第三方模块wsgi,中间件,路由系统(CBV,FBV),视图函数,ORM。cookie,session,Admin,Form,缓存,信号,序列化。。
Flask:无socket,中间件(扩展),路由系统,视图(CBV)、第三方模块(依赖jinja2),cookie,session弱爆了

djang和flask的对比

 

from flask import Flask

app  =  Flask(__name__)

@app.route('/')
def hello():
return 'Hello World' if __name__ = '__main__':
app.run()

剖析上述代码:

    1. 首先,我们导入了类 Flask 。这个类的实例化将会是我们的 WSGI 应用。第一个参数是应用模块的名称。 如果你使用的是单一的模块(就如本例),第一个参数应该使用 __name__。因为取决于如果它以单独应用启动或作为模块导入, 名称将会不同 ( '__main__' 对应于实际导入的名称)。

    2. 接着,我们创建一个该类的实例。我们传递给它模块或包的名称。这样 Flask 才会知道去哪里寻找模板、静态文件等等。
    3. 之后,我们使用装饰器 route() 告诉 Flask 哪个 URL 才能触发我们的函数。这也就是路由,博文之后会详细学习。
    4. 之后 ,定义一个函数,该函数名也是用来给特定函数生成 URLs,并且返回我们想要显示在用户浏览器上的信息。
    5. 最后,我们用函数 run() 启动本地服务器来运行我们的应用。if __name__ == '__main__': 确保服务器只会在该脚本被 Python 解释器直接执行的时候才会运行,而不是作为模块导入的时候。

    服务器外部可见:

      目前服务器 仅可本机 localhost 访问,这是因为默认情况下,调试模式,应用中的一个用户可以执行你计算机上的任意 Python 代码。

      如果你关闭 debug 或者信任你所在网络上的用户,你可以让你的服务器对外可用,只要简单地改变方法 run() 的调用像如下这样:

       app.run(host='0.0.0.0')  这让你的操作系统去监听所有公开的 IP。

  

   调试模式

    有两种方式开启调式模式:加入语句,应用对象上设置标志位:   app.debug = True  

                或者作为 run 的一个参数传入:   app.run(debug=True)   作为 run 的一个参数传入

    调试模式有安全隐患,决不可在生产环境使用,参考如下:

Attention

Even though the interactive debugger does not work in forking environments (which makes it nearly impossible to use on production servers), it still allows the execution of arbitrary code. This makes it a major security risk and therefore it must never be used on production machines.

Flask 路由

      所谓 路由,即 URL 绑定; Flask 使用 route() 装饰器把一个函数绑于一个URL上, 如下:

 from flask import Flask
app = Flask(__name__) @app.route('/')
def indexPage():
return 'Index Page' @app.route('/flask')
def flaskPage():
return 'Flask Page' if __name__ == '__main__':
app.run()

如上示例,把 "/" url 绑了indexPage() 函数,把"/flask" url 绑了flaskPage() 函数。

  HTTP请求模拟工具:这边需要使用到HTTP请求工具来查看,chrome可用插件postman;firefox可用HttpRequest。具体使用这边就不介绍了,很简单。

      运行后,请求url  aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPsAAABKCAIAAADyhrUhAAAFeklEQVR4nO2csbGDOBCGaYkZarmMiFoIKeEaIKcMGvDMCy+nA1+AJe2uViABnjHs/80LsCwkAR9iJaNXLY6/v78FgKdT+S0YDywA44EtYDywBYwHtigyfmyrQN3Pn+S5r6uYdtTTw37Hmfu6asfTxcgyfdPW7atq8eV8o9mhio0LQyvNT+Tn5ClkGz/3NTsfY+vP7e6FvPxKqwXSxPIaY+Eva/ZVxm/sPrbxN2P7uWB+oyhxeabwucbPfR11zvkX8gbGK8LfyPixjR+dJC3smJ+4PFT4TOO3L9VJ48MTmZ333iUrZ30t0AVZvnty2en28rlyvUsjHRspeWzDB7ctb6GoOSSWCIdHQ781VRjPmp0uPJSzJoqDEp5GJ4mdc5c3P1Gek+eQZ7zWhwTUeF1GiSnjyYPUb859TS+s3p1XoYeKe1DZV7HcyqHQqMBvs14waiRNTObkSqnNThbumuk3k6dxbKu6Fv3DeeO1SOkBHDGe9GJ5T/+NDMlroF45uleUYdN4/QM5olj4RDTiGrndC8jD8eVsNjsUqt3oqdPIQk7X/NPGP1T4U1GNesryd2dlsHy7EbmaIc94zVRd+LCf1khtZOO/T/QIagvVM/BpCX9eZg0DyuVO3nKPFP7MyPUS43evwdXGK+UlhD/Sx8vuNsP4ZBhNmlcw8KXKnhi5Plb4wtnJaNR22vhkHH/MeHrl6NzL1rBg7msqOR9Q5sfx7jagGXOMT54BEk/HiYlTSAexZ2Yn2Xl4FkW/QPEhqhgZboxdD83VFBvvCiKDRCJa24rZENIDR/OSei05czU03yiDtNRxqYXLuRpxUOxxoDSEFVGaOD9yXnLFwlsGWdEAMAKMB7aA8cAWFowHIADjgS1gPLAFjAe2gPHAFjAe2ALGA1scXuf6exPc+k/tPpU2WE1MlhaVx/ea+/oXTwfQyTdeLmdgb3XsXvCvv5qkLcUoXNbJC+MvGKfe10++NAx+lHzjhQUOeiOkyMlzEv0t86Jlnay58fuV2kKk/VUh4NcoNF4zgT364/UQMg99PtBbgWSj3x4xyvXdJUt++DGpb2uK3ZNPCPDLlMTxcm3xsiyi/6bPAWJ2nCcy3m+RvAeN3+mPc1Zg6Cth6V2E4P2uFM/VyLVoSsSS6PgzjD/vEDPxW8bXdV2t/2wBMc3tODY7KRZAcZursBwo3/j05EgB2jqti6Iatnu09Anch4Pz8Uo4sojBbVlUE1DHC7lNErt9e+SK4OZ+ZBvPRExoHnXr2q0gA/V1O+waOuqSOD7R3X59dhLO342CPp4vZ6X/wiukkN+o1n8qRubFRbzjs1wxV0N/G+NxUf5az40i93+BgvR3AW8ZAFvAeGALGA9sAeOBLWA8sAWMB7aA8cAWMB7YAsYDW8B4YAsYD2wB44EtYDywBYwHttgx/p9//8Mf/p70t2/8G4AHAeOBLWA8sAWMB7YoNP41NFU3ZZU8dVUzvI626zU0cuXqidIAcPyy8byiqYP04Dz3Mb6kbgBSHDX+NTRVN7jQI6g9dZ8YpOuI8SF18sX4b9mHqCI1yZcXiiSBUDeQnWXVwDhnjHeaTp3zKWyR74Opr6Hxavus+rNAj2pkLSTUEVWT+zKqGljmjPG0k47ldR+YuzTHa2j4k0BWlDNydQXKqqtu2qga2OVUVDPxRN6PUuMT4k5dMtrYDtpZmc3wElXTBmG2BzCuND6jj6dMXdUMU+LbDeOZ3fl9PADv98XG78XxalytR9gbsoowPi+Oh/1g5VrjQyDRDIM2V0PGumJ+p2AqMgQr7BkR5mrUaSKENOD9fuhbBhikgiRPMV6d+AQg4inGs4kZdPAgyXOMByAHGA9sAeOBLWA8sAWMB7aA8cAWMB7Y4n+WQN2wajaX4QAAAABJRU5ErkJggg==" alt="" />  以及  aaarticlea/png;base64,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" alt="" />

    

      以上仅是最简单的url构造,你可以动态地构造 URL 的特定部分,也可以在一个函数上附加多个规则。之后会具体介绍。

变量规则

      给 URL 增加变量的部分,把一些特定的字段标记成 <variable_name>。这些特定的字段将作为参数传入到你的函数中。

      当然也可以指定一个可选的转换器通过规则 <converter:variable_name>。

      先看以下示例(之后示例均省略上下文代码):

@app.route('/user/<username>')
def show_user_profiile(username):
# show the user profile for that user
return 'User: {0}'.format(username)

      即简单的URL增加变量,运行后请求的URL需带参数 aaarticlea/png;base64,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" alt="" />

  变量规则

      给 URL 增加变量的部分,把一些特定的字段标记成 <variable_name>。这些特定的字段将作为参数传入到你的函数中。

      当然也可以指定一个可选的转换器通过规则 <converter:variable_name>。

      先看以下示例(之后示例均省略上下文代码):

@app.route('/user/<username>')
def show_user_profiile(username):
# show the user profile for that user
return 'User: {0}'.format(username)

      即简单的URL增加变量,运行后请求的URL需带参数 aaarticlea/png;base64,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" alt="" />

  存在如下转换器: aaarticlea/png;base64,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" alt="" />,示例代码如下:

@app.route('/userid/<int:user_id>')
def show_userId(user_id):
# show the user_id, the id is an integer
return 'User ID: {0}'.format(user_id)

      URL 须在 "/userid/" 后传递一个整数,运行后如 aaarticlea/png;base64,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" alt="" />

   HTTP 方法

      默认情况,创建的URL路由是Get方法,可在通过给 route() 装饰器提供 methods 参数来改变 HTTP 方法,有关HTTP协议相关,请Google相关文档。

@app.route("/postUser", methods=["POST"])
def hello_user():
return "Post User"

      上述示例即为一 Post 方法的路由,运行后直接访问会报405,因为该请求方式 应为 Post,这边使用 FireFox 插件 HttpRequester 来模拟

      aaarticlea/png;base64,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" alt="" />

      更改为 Post 方式,aaarticlea/png;base64,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" alt="" />

      最常用的方式即 Post 和 Get,其他的还有 Delete、Put 等,需用时请阅相关的文档。

 Request 参数

    须要引入request   from flask import Flask, request  ,来进行request参数的传值,具体示例如下:

@app.route("/query_user")
def query_user():
userId = request.args.get("id")
return "query user: {0}".format(userId)

      aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAT0AAABvCAIAAAARyICCAAAK4UlEQVR4nO2dy5LbxhWG8Uqo4tOkCitUuUrbvAOWfA07hjMjWRKtVKW8sHNxPBJlWSnfRpeJLc/dsWlbypZZgOg+p/v0BRdi2NT/1VlwmkADbPTHPg0CmOzw6DQYB593iMOjs8Ojs4Oj04Oj08OHZ4cPz24/Om/izvLizqPzD5cXdx9f3n18ee+LKxr3n1w3sfjyp/j4qHc87RAPdi/+8u+Y+G+C4ftED55eP3h6rRrhoy+v7Vg8uaJx/4tLGvceX9C4uzxv4sNHZzTuPDylcfvoxyYOP3/VxMG/fqDx58++V/HBP/+jov7HiYr3//6Sxp/+9oLGe58+N+LdT565Irv98Gx73ip1G3uVt0pdaq/ytpO903i7g+rur7dD7e3nra0utVd5S+011FX2Um+puoa3trq2vT5vg+p28lYcctWoe+fRuaGuOOR2GnX7q5v4wBunbqL2Dhp1DXU99lJvbXvFIZeOuoa94qhLh9wYe2PUjfK2t722t/aoe8PZcveBN017b9zDSb0dqK6yN5gtG+pSb5W6hrc9Embb3q1722OiO7W98HZHY6IhV7R33CHXnzD391bFlrJlIWFeXhjZsitn3rVzVPB2x9S9FtXt6m3MaSpxlus5R+Xydni23MHbHurSUdf21s6W7z+5vhlvU57lRqubor39vR046npOL/fLloMT3U6nl01vR7dXjbrKW31uOdmfhXbQ3j311qeu4W2kusOzZZe6QW8H/ixE1e3j7ZCcOXKiqwbe6eyFt7sbg0bdUbyNmeh2zZa7/ibEvH128bsQ59uMzVZeP7t4/ZzEi8s3dry8UvG/+DjpHdeIFOPNyfUb/efVGxov7bg048XlaxYXm3h+8bsYz85/k+PsVxrHKk51fHe68sS3P/4SiFc/f/vq5+wP7/wRgUCkFdmq5datWysAQArAWwDSA94CkB7wFoD0gLcApEdXb+siM8ir5fZ2DwAg0MvbomZ/wlwApmWgtxAXgBtgPG+XVc4TaLWUyq03fhtLautpEt6uTTdYF9ZY766W7SYAe8V4efKyysWBV5XXBTFcLalK1Yt2pWYzjZ3NG9TbQLUA7DM+b786OVXRllnnpZhqLm/5G5K3WtQVK29craq8qG1vPdU6PwgCsQfh9Park9M1gXlb1CuVlirXzDRVK0TeoWuyBS3p2oKNq3WRV0ueJweqJdWtAdgvZG8baYWRi+XJG1HI9NKbpqoRUlrSP97Wq9WyKqqqECat3moB2EuGeMvHXIc2REitoLQkq5nPb/Xq/DsjploA9pBh3qr5blHbp3Nbh8gb/jNYzvPJ5HSymJfrah2JMgD7RVdvAQA3D7wFID3gLQDpAW8BSA94C0B6wFsA0gPeApAe8BaA9IC3AKQHvAUgPXp7y27oE+/9IRS1XD7GlYjLKh/9DvllldP7Ezf3GY6xFVXPNnZbb8JzYOhG4wt5mySNeR+Z61jURWT/tFePKRlGL2/Nm3fILe/B/Ru9v4oV0sLuW7S1HW23x/LWs3pd2O+oq7zprZDxhav90da43t3zmSK9Zbe7RJcMpYe3rtvw4rpjAt4K2ibkrdTdSJleMb5wtVfaks/hVTPsbTNy50WhGiqmZBS6e+vvcAO91TkM6z1VW+y4UbCo27SdPNumWdx4CtWyyvOqasvIIMOOJn3klb7ZiN1kaO6OnX2tpBucDG/Zbrsr1/XoB/bQZbhtViOxNm+XjS+022Sz09Vmaee3ZG029LLK86LIsywrCms8d/YLV/1ms4Q3Wov1inUWRaEfhGSyOZh1bfSNmJJR6O6t/2tInMeasyfXBzByGP0UC909HffNG7fiunuSubTwUWieqV6zEcl+Th0pdC7JxRB321l5u5vqpbMZ6yLLc+Nbbri3uk1ItqXuq5Rbm78i91pKs0pvv5brl5oluFHeUlZj6kan/S5AGvNbK9Ng33lDxltnTxL7H13LWsDrrb+ziNo68ttafyUHDrElRnC3daXS15WrGdkkpt39wd4K7UD/EFs7eDTZqBSdxIlfi3KziBslC9p1suO4Z+el5D0QD3z86qwOtlxwphrsNB5VhUMja+s4tJtSqWOo9x3fa+Ieii2w2ROeu0T1g+6KOr84vI3pPAQUoXvQZX2KhPNw2iyBjfKPZn0O21t3nizsXnzJMEY6LzWKt8GeNLa38gGVtO0z3ppDX4S3rjSV7p6wpAsq3oDzUmI70D/Cn2Ulra6qDmgb7gP+Zgla9FaMtys792++5QZ765zf9vOW9j+Wm3mmy8vmga/Wazk9c85v1fc0WTDGW2cLkImcXehoQqqD+OtOZCFrB7phNb81p4X6pZkdWEewLrKiCp6rluoXmyVuoyZS+5t9PGr1LiXD6H3dBc9I2FewgCSAv1ZpThvvbVsRzdj0MSwKvg06Glq/AMlbMSpgH1xarjaHJtfnEisXTpzSD8WGBmFHWBVdC+3BsF2A/LihNppXFc9Y3EeTLBLs0XL9gfPJ7o26xluypbyq9m68TZix2++tZozGxAHpBbwFvRmhMXE8+gFvQW+GNSbL9GmJwV5cpzU2b5u3AOwD8BaA9IC3AKQHvAUgPeAtAOkBbwFID3gLQHqM8nyp3ftBVL7YT5XSHRYLnbUF7vUml+cCsD36edt0ZH0pNrs6NuZi0+12bemG9S7X1luVkXfozfbCZa64SABMQT9vHReDU51dxCwzEPku1vh72czdte8Zkh46EX3bFwCDGeCt1J9ZMsnSS/LIEL0MHaup0GQx+m4fL9pxVHQsKJ7zDiRjdedoDcA26Du/tW6WWq2MsZSOycRPexnLW/WKLNvT28DYGPRWHkSN7wJMasHUDDqfbD4mRMiBHYNwhLfDTWA+bcvbPM83TzZElgwmY/jvQEv+sAvuZEYf0RPrrfsEbgfMAXrEPJmtTp+uAHPBRIzw+62Q4K6MU1fd8mSNOI+O3SVjtW2fl0K6DKajl7dMJ4es1hArCW1OYJvXelU9aHaZ3zqGvq3/DgRzwVT0HG/5Hc7sGXiqhFyZ0fzDAfo4MZ5Bq0XGOJ9sPzfTeh5R8BlLnirD111AXbBtcJ0jAOkBbwFID3gLQHrAWwDSA94CkB7wFoD0gLcApAe8BSA94C0A6QFvAUgPeAtAesBbANID3gKQHvAWgPTo4O3X33z3148//eDgHgKBuNno4O0Pr64uf1qtAQA3TTdvb3pvAQDrNbwFIEXgLQDpAW8tjuezrFx0LQFgQuCtwaLMsow5GVMCwKTAW83xfJZl2aws1VgaUwLA9Az0thl5sqycbxJHmkCyZLJdkr47K8tZlmVlWbLRS0hCXdWqWrPZ/NjaK2lbi/V6UbKl9UYWi2Nef0wJANMzxNvj+awVYFFunJAF46+adY7ns4yOYkoDyQm5WiKgfhnaVhDMb8HOM8BbUTZRMHPgnc2PmfV8RJOUcHrrNVzeVgh4C3aeybylKJd016fLCoaF028+AfVuKwC8BTvP9OOtuPp6vV6UWblwaOv2lqzdYVte4C3Yecae35LclUwqpTTY6vqLMivnsrZytTT75e8Ht+UD3oKdZ6TzyeSHEZWozubzUkhoW9Psrq/lF5CrDZxPlrflOp9MtgRvwU4z1u+3Y3RkyABAHDvkLbQFIJLd8HaTBMNaAKLAdY4ApAe8BSA94C0A6QFvAUgPeAtAesBbANID3gKQHvAWgPSAtwCkB7wFID3gLQDpAW8BSA94C0B6/B8MgKDO1jI9MwAAAABJRU5ErkJggg==" alt="" />  有没有很熟悉? 再看下多参数的,如下例:

@app.route("/query_page")
def query_page():
pageid = request.args.get("pageid")
num = request.args.get("num")
return "query page: {0} and {1}".format(pageid,num)

      aaarticlea/png;base64,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" alt="" />   (该部分仅简单介绍,后续会具体学习)

一、Flask路由介绍的更多相关文章

  1. Flask 学习(三)路由介绍

    Flask路由规则都是基于Werkzeug的路由模块的,它还提供了很多强大的功能. 两种添加路由的方式 方式一: @app.route('/xxxx') # @decorator def index( ...

  2. Flask - 路由系统

    目录 Flask - 路由系统 @app.route()装饰器中的常用参数 methods : 当前 url 地址,允许访问的请求方式 endpoint:反向url地址,默认为视图函数名(url_fo ...

  3. 面试简历书写、Flask框架介绍与快速使用、Flask演示登录页面、用户信息页面案例

    今日内容概要 面试简历编写 Flask框架介绍与安装 内容详细 1.面试简历编写 # 千万不要几个小时把简历凑出来 几天到一周 # 有没有面试机会,取决于简历写得怎么样 简历写好是第一步 # 投简历的 ...

  4. node之路由介绍

    路由介绍 ----路由是指向客户端提供它所发出的请求内容的机制:----对基于 Web 的客户端 / 服务器端程序而言,客户端在 URL 中指明它想要的内容,具体来说就是路径和查询字符串 下面我看看一 ...

  5. Flask路由系统

    Flask路由系统 我们之前了解了路由系统是由带参数的装饰器完成的. 路由本质:装饰器和闭包实现的. 设置路由的两种方式 第一种: @app.route('/index') def index(): ...

  6. Flask ——路由系统

    Flask中的路由系统其实我们并不陌生了,从一开始到现在都一直在应用 @app.route("/",methods=["GET","POST" ...

  7. Flask 框架介绍

    FLASK 框架 框架介绍 简单来说: 小 扩展性极强 官方文档 点这里 Flask 和 Django 的区别 Django 无socke,依赖第三方模块wsgi 路由系统(CBV,FBV) 中间件, ...

  8. Flask路由+视图补充

    一.路由设置的两种方法 1.装饰器 @app.route('/index/') def index(): return 'Hello World!' 2.源码 route->decorator- ...

  9. flask路由和视图和cookie

    什么是路由 """ 客户端(例如web浏览器)把请求发送给Web服务器,Web服务器再把请求发送给Flask程序实例. 程序实例需要知道对每个URL请求运行那些代码,所以 ...

随机推荐

  1. C#连接sql server windows 和 sqlserver 身份验证的两种连接字符串

    //sql server 身份验证 连接字符串 private string ConnstrSqlServer = "server=服务器名称;uid=登录名称;pwd=登录密码;datab ...

  2. 开发一个简单的chrome插件-解析本地markdown文件

    准备软件环境 1. 软件环境 首先,需要使用到的软件和工具环境如下: 一个最新的chrome浏览器 编辑器vscode 2. 使用的js库 代码高亮库:prismjs https://prismjs. ...

  3. linux 常见报错

    yum install 包名        出现安装包重复,同一个安装包出现多版本 使用 rpm -qa |grep 包名 如果出现包名,则说明已存在该包(已被安装),要安装新版本的,可以卸载已装的y ...

  4. 关于STL的map的注意事项

    关于map是什么,这里就不多叙述了. 直接正题,常用的map插入操作有三种方法:通过pair<key_type,value_type>.通过value_type插入数据.还有一种类似于数组 ...

  5. C#安装Telnet

    1.打开电脑控制面板: 2.“查看方式”改成小图标: 3.点击“程序和功能”: 4.在左侧选择“启用或关闭Windows功能”: 5.选择“Telnet服务器”.Telnet客户端: 6.点击“确定” ...

  6. 如何使用VMware安装rhel6.4操作系统(详细步骤)

    第一步,打开VMwareWorkStation11创建新的虚拟机.如下图所示. 第二步,点击文件,然后选新建虚拟机.,新建虚拟机向导,选择自定义. 第三步,选择虚拟机硬件兼容性.选择WorkStati ...

  7. html横向滑动案例

    <style type="text/css"> .outer-container,.content {width: 630px; height: 185px;paddi ...

  8. 20165214 2018-2019-2 《网络对抗技术》Exp4 恶意代码分析 Week6

    <网络对抗技术>Exp3 免杀原理与实践 Week5 一.实验目标与内容 1.实践目标 1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行. 1.2是分析一个恶意软件,就分析Exp ...

  9. python并发_进程_multiprocessing

    多进程基础, 主要是用了 multiprocessing模块 : 在一个python进程中开启子进程,start方法和并发效果. import time from multiprocessing im ...

  10. WeX5学习笔记 - 01

    了解WeX5,有朋友突然自己开始学习WeX5,我了解后觉得挺不错的实用范围广,现在手机上的主流软件基本都可以采用WeX5进行开发,如淘宝,美团.手机银行等,所以自己也开始学习WeX5,WeX5是Ecl ...