专栏首页北京马哥教育Python实战-初识 web.py

Python实战-初识 web.py

在我们通过每天五分钟自学Python基础知识之后,很多同学感觉自己对Python有了一定的了解,甚至觉得自己入门了,对于一些项目跃跃欲试 ,但是可能道阻且长,这是因为我们分享给大家的基础知识是需要大家不断进行拓展学习的,光是了解我们分享的是远远不够的,所以我们再分享一些Python实战项目,给大家一些思路。今天我们就先来看第一节初识 web.py。

目前对这个项目的初步设定是一个关于电影的网站,会涉及到网站搭建、爬虫、数据处理、数据库等内容,也会稍为涉及一点HTML相关的内容。

以这样的方式来做,对于初学编程的人,可以对软件开发这件事情有个更直观的认识,不再局限于用代码解题这种层面;对于已经有一定的编程基础人,我希望能抛砖引玉,给大家一点启发。你们可以在我这个虚拟项目的基础上,添加自己喜欢的功能,也可以仿照这个流程另起炉灶,做一些自己设计的项目。

那么今天先开个场:既然要做一个跟网站相关的项目,少不了要选择一个基于 Python 的 web 开发框架。这次我打算选择 web.py。我本人对 django 的经验比较多,web.py 并没有用过。不过都说 web.py 很简单,那么用来玩一玩也无妨。同时,也算是对 Aaron Swartz 致以我个人的敬意。

安装 web.py

web.py 有几种下载方式,通常用 easy_install 会比较方便一点。关于 easy_install 的使用网上可以很容易搜到,这里不再赘述。安装 easy_install 后,Linux 和 Mac 下都可以通过命令

sudo easy_install web.py

完成安装。Windows 下应该不用 sudo,手边没有 Win 系统无法验证,见谅。

或者也可以通过 pip 安装、下载或 clone 安装包等方式进行安装。

在你的 Python 命令行下输入

import web

无任何报错说明已安装成功。

运行你的第一个网站

在一个你找得到的地方新建一个叫做 code.py 的文件,然后输入敲入以下代码并保存:

import web

urls = (

'/', 'index'

)

class index:

def GET(self):

return "Hello, world!"

if __name__ == "__main__":

app = web.application(urls, globals())

app.run()

具体这些代码的含义今天先不解释,保证不要输错就好。

从命令行进入 code.py 所在的目录,运行:

python code.py

不出意外的话,应该会看到输出:

http://0.0.0.0:8080/

用浏览器打开这个地址,就可以看到一个只写着 Hello, world! 的页面。不过有些浏览器(比如我的 Chrome)会不认 0.0.0.0 这个地址而进行搜索。如果遇到这种情况,可以在运行时指定地址为 127.0.0.1,即:

python code.py 127.0.0.1

然后访问 http://127.0.0.1:8080/ 就 OK 了。

也许这就是你人生第一个网站吧,想想是不是还有点小激动呢。前方的路还很长,欲速则不达,且行且珍惜。

如果你按捺不住想要了解更多,可以先去 webpy.org 瞅瞅。上面的新手引导有中文版本。

恭喜您在Python自学的道路上又坚持了一天,今天的Python实战项目开篇,不知道有没有调起你的胃口?如果有的话,那我们接下来撸起袖子加油学,更多Python相关的内容尽在马哥教育官网,敬请关注!

免责声明:内容和图片源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

原文链接:https://www.jianshu.com/p/761d9677ae1c

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 为你的Python游戏添加跳跃系统

    在本系列的上一篇文章中,你模拟了重力系统, 现在你需要给玩家一种通过跳跃来对抗重力的方法。

    五月Rambo
  • 不一样的 NumPy教程,数值处理可视化

    在 Python 的生态环境中, NumPy 包是数据分析、机器学习和科学计算的主力军。它大大简化了向量和矩阵的操作及处理过程。一些领先的Python 包都依靠...

    昱良
  • Detectron学习三:自定义数据层

    博客:https://www.cnblogs.com/marsggbo/p/11727556.html

    CV_Learner
  • 通过 Python 理解 Mixin 概念

    Mixin 即 Mix-in,常被译为“混入”,是一种编程模式,在 Python 等面向对象语言中,通常它是实现了某种功能单元的类,用于被其他子类继承,将功能组...

    用户2769421
  • JavaScript异步编程:Generator与Async

    从Promise开始,JavaScript就在引入新功能,来帮助更简单的方法来处理异步编程,帮助我们远离回调地狱。 Promise是下边要讲的Generator...

    贾顺名
  • async语法升级踩坑小记

    首先还是要谈谈改代码的理由,毕竟重构肯定是要有合理的理由的。 如果单纯想看升级相关事项可以直接选择跳过这部分。

    贾顺名
  • 一行代码将Pandas加速4倍

    虽然 panda 是 Python 中用于数据处理的库,但它并不是真正为了速度而构建的。了解一下新的库 Modin,Modin 是为了分布式 panda 的计算...

    Datawhale
  • Detectron2学习四:build_train_loader流程

    DefaultTrainer类中函数build_train_loader(cfg)的实现流程

    CV_Learner
  • 【Data Mining】机器学习三剑客之Pandas常用用法总结(上)

    看pandas之前我建议先看我的numpy总结,效果更佳。 【Data Mining】机器学习三剑客之Numpy常用用法总结 可以大概理解为numpy主要是用来...

    接地气的陈老师
  • 在Python游戏中模拟重力

    我们的现实生活中充满了运动和生命。物理让我们的世界变得如此繁忙和生动。 同时我们要知道,物理阐释了物质在空间中移动的方式。 不过呢,因为我们的游戏世界本不存在物...

    五月Rambo

扫码关注云+社区

领取腾讯云代金券