这里有新鲜出炉的 Python 教程,程序狗速度看过来!
Python 是一种面向对象、解释型计算机程序设计语言,由 Guido van Rossum 于 1989 年底发明,第一个公开发行版发行于 1991 年。Python 语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,它能够把用其他语言制作的各种模块(尤其是 C/C++)很轻松地联结在一起。
这篇文章主要为大家详细介绍了适合初学者学习的 Python3 银行账户登录系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
表单在网页中主要负责数据采集功能。一个表单有三个基本组成部分: 表单标签:这里面包含了处理表单数据所用 CGI 程序的 URL 以及数据提交到服务器的方法。 表单域:包含了文本框、密码框、隐藏域、多行文本框、复选框、单选框、下拉选择框和文件上传框等。 表单按钮:包括提交按钮、复位按钮和一般按钮;用于将数据传送到服务器上的 CGI 脚本或者取消输入,还可以用表单按钮来控制其他定义了处理脚本的处理工作。而在 html 里面,在地址栏输入一个 URL 然后打开,这样发送的是一个 get 请求,若是要使用 POST 请求,就需要使用表单了。
HTML 中的表单就是由 form 的标签来声明的,举个栗子:
- <form action="login" method="post">
- <label>username:</label>
- <input type="text" name="username"><br />
- <label>password:</label>
- <input type="password" name="password"><br />
- <input type="submit" name="submit">
- <form>
上面代码中,由 form 标签包含的部分便是表单的内容,其中关注其中的 input 部分,这个表单中有三个 input,一个是 text 类型的,代表普通的文本输入,一个是 password 类型的,代表密码输入,一个是 submit 类型的,是一个提交的按钮;form 标签定义了两个属性,一个是 action,代表这个表单提交的路径,一个是 method,代表这个表单提交的方法,缺省为 GET。接下来详细说明一下上述例子的具体过程,当用户点下 submit 的按钮的时候,这时候浏览器就向 action 的路径发送了一个 POST 请求,请求的内容是下面这个样子的
- data = {
- 'username': 'XXXXXXXX',
- 'password': 'XXXXXXXX'
- }
就是将各个除了 submit 之外的 input 的 name 作为 key 值,实际填写的数据作为 value 值作为数据包,发送了一个 POST 请求,当然,如果吧 method 改为 get 的话,那么发送的就是 GET 请求了。接下来,服务器所接收到的的请求数据就跟从客户端程序那边发过来的数据是一样的了,接下来就是根据发送过来的数据,做对应的处理然后返回了。
有了上述知识之后,我们就开始做一个简单的注册登录系统。我们做的注册登录系统是有注册功能和登录功能,注册后服务器将注册信息存储到本地,登录时验证注册消息是否正确。web.py 里面有一些 template 里面已经有了一些支持,具体代码如下:
- # -*- coding: cp936 -*-
- import web
- import os
- urls = (
- '/', 'hello',
- '/login', 'login',
- '/regist', 'regist'
- )
- app = web.application(urls, globals())
- class hello:
- def __init__(self):
- self.render = web.template.render('templates/')
- def GET(self):
- return self.render.form()
- class login:
- def POST(self):
- para = web.input()
- username = para['username']
- password = para['password']
- #TODO:...
- #if authenticate(username,password):
- #return render.hello(username)
- return 'hello world'
- class regist:
- def GET(self):
- return 'hello world'
- #return self.render.form()
- def POST(self):
- para = web.input()
- username = para['username']
- password = para['password']
- #TODO:...
- return 'hello world'
- if __name__ == '__main__':
- app.run()
运行效果如下挫图:想要自己搞得美观一点,可以自己找一些相关资料!这个实现的就是输入密码,返回值。你可以看到没有本地保存,是的,这就是给你在 TODO 那里留的坑!然后密码匹配什么的把上面的 login 类那里的注释去掉即可!
随便输入用户名密码可得:
来源: http://www.phperz.com/article/17/0827/344555.html