iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >我的python学习--第五天
  • 908
分享到

我的python学习--第五天

第五天python 2023-01-31 00:01:42 908人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

一、函数的定义:  def 函数名(name,age=20,*params):    函数体    return 返回值  示例:def hello():     print 'hello world'               # pr

一、函数的定义:

  def 函数名(name,age=20,*params):

    函数体

    return 返回值


  示例:

def hello():
    print 'hello world'               # print表示要表达的一段话
    return 'hello'                    # return表示函数的返回值

def dosth(fn):
    print fn+' everyone'              # 函数中还可以调用函数

hello()
dosth(hello())

[root@test1 python]# Python hello.py 
hello world
hello world
hello everyone


二、模块

简单的理解,模块就是文件,我们可以使用import,把其他文件的内容引入,进行使用


模块整体分为三种:

  1、python自带的模块,比如sys、math、random、os、time等

  2、第三方的开发者开发的模块,可以通过pip install安装,然后用import导入,比如flask requests,pyquery,psutil等

  3、自己开发的模块


import的模块查找路径:

  1、当前目录

  2、pythonpath全局路径

注:自己创建的文件名不要与模块名相同,不然导入时,导入的将是创建的文件而不是模块



三、Flask

Flask是一个使用Python编写的轻量级WEB应用框架。其WSGI工具箱采用Werkzeug,模板引擎则使用Jinja2。


1、安装flask框架

[root@test1 python]# yum install -y python-pip
[root@test1 python]# pip install flask


2、写一个hello world

#!/usr/bin/python
#coding:utf-8

from flask import Flask                          # 引入flask的启动模块
app = Flask(__name__)                            # 创建一个app

@app.route('/')                                  # 监听路由,即url
def index():                                     # 路由对应的处理函数
    return 'hello world!'

if __name__=='__main__':
    app.run(host='0.0.0.0',port='8888')          # 启动app,监听在8888端口


运行结果

wKioL1ee5J-isgzyAAAhJ6KVJU4791.png


3、使用request

request里面包含一次网络请求所有的内容,所有get的url参数都在request.args这个变量里,request.args是一个类似字典的数据,flask通过request.args.get获取前端url给的参数

#!/usr/bin/python
#coding:utf-8

from flask import Flask,request                  
app = Flask(__name__)

@app.route('/')
def index():
    return 'hello world!'

@app.route('/hello')
def hello():
    name = request.args.get('name','world')            # 获取请求的参数
    return 'hello %s'%name

if __name__=='__main__':
    app.run(host='0.0.0.0',port='8888')


在url中通过name=Alice传入参数

wKiom1ee6ayD_c5cAAApjY1Z4KY424.png


4、使用模板

#!/usr/bin/python
#coding:utf-8

from flask import Flask,request,render_template
app = Flask(__name__)

@app.route('/')
def index():
    return 'hello world!'

@app.route('/hello')
def hello():
    name = request.args.get('name','world')                 # 获取参数
    return render_template('hello.html',name=name)          # 将参数传入模板
#    return 'hello %s'%name 

if __name__=='__main__':
    app.run(host='0.0.0.0',port='8888')


模板文件hello.html

Hello,my name is `name`


运行结果

wKioL1ee662znmYyAAAqBKvy0E4046.png

当使用模板时,render_template会自动到当前目录下的templates目录下去查找请求的html文件,并将参数替换


flask使用的是jinja2模板语言:

  ``.``.``.``包裹的表示变量

  {%...%}包裹的是python的语句

  循环语法:

    {% for x in arr%}

     ...

    {%endfor%}

    循环结束,if同理


5、redirect跳转

#!/usr/bin/python
#coding:utf-8

from flask import Flask,request,render_template,redirect
app = Flask(__name__)

@app.route('/')
def index():
    name = request.args.get('name')
    pwd = request.args.get('passWord')
    if name=='admin' and pwd=='admin':               # 用户名密码为admin,就跳转
        return redirect('/admin')
    else:
        return 'hello %s'%name                      


@app.route('/admin')
def hello():
    with open('user.txt',) as fo:
        names = [names.split(':') for names in fo.read().split('\n')] # 显示已有的账户密码
    return render_template('user.html',names=names)

if __name__=='__main__':
    app.run(host='0.0.0.0',port='8888')


user.html文件

<table border='1'>
    <thead>
        <tr>
            <td> Name </td>
            <td> Password </td>
        </tr>
    </thead>
    <tbody>
        {% for name in names %}
        {% if name[0] and name[1] %}
        <tr>
            <td>{{name[0]}}</td>
            <td>{{name[1]}}</td>
        </tr>
        {%endif%}
        {%endfor%}
    </tbody>
</table>


显示结果:

非admin用户

wKioL1ee9Qyxk7-nAAAofIbv4WI471.png


admin用户和密码

wKiom1ee9WSQlwDuAAApLtOvYeQ314.png

跳转后

wKioL1ee9aKxbFwhAAApivecNXM108.png


6、在5的基础上将添加用户功能进行美化

#!/usr/bin/python
#coding:utf-8

from flask import Flask,request,render_template,redirect
app = Flask(__name__)

@app.route('/')
def index():
    return 'hello world'

@app.route('/useradd')
def useradd():
    name = request.args.get('name')
    pwd = request.args.get('password')
    if name and pwd:
        with open('user.txt','a+') as fo:
            fo.write('%s:%s\n'%(name,pwd))
        return redirect('/admin')
    else:
        return 'need user and password'

@app.route('/admin')
def hello():
    with open('user.txt',) as fo:
        names = [names.split(':') for names in fo.read().split('\n')]

    return render_template('user.html',names=names)

if __name__=='__main__':
    app.run(host='0.0.0.0',port='8888')


user.html代码为:

<fORM action='/useradd'>
    name:<input type='text' name='name'>
    password:<input type='text' name='password'>
    <input type='submit' value='add'>
</form>

<table border='1'>
    <thead>
        <tr>
            <td> Name </td>
            <td> Password </td>
        </tr>
    </thead>
    <tbody>
        {% for name in names %}
        {% if name[0] and name[1] %}
        <tr>
            <td>{{name[0]}}</td>
            <td>{{name[1]}}</td>
        </tr>
        {%endif%}
        {%endfor%}
    </tbody>
</table>


运行结果:

wKiom1ee-g3jT849AAAvo4qJtJY950.png

wKiom1ee-keRabQCAAAyYjCWjbg721.png

wKiom1ee-lTT2rDkAAAxOZdooLY732.png


7、html常见标签

  table:后端向前端展示数据

  form:前段向后端提交数据

    action:提交的地址(url)

    input:输入框

      type:输入类型

        text:文本

        submit:提交按钮

        value:按钮上的文字

        password:密码已点或星显示

       checkbox:多选框

        radio:单选框

      name:字段名


8、其他常见标签:

  p:一段话

  br:换行

  hr:一个横线

  a herf="":锚点(超链接)

  img:图片标签

    widh:宽度

    height:高度

--结束END--

本文标题: 我的python学习--第五天

本文链接: https://www.lsjlt.com/news/183029.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 我的python学习--第五天
    一、函数的定义:  def 函数名(name,age=20,*params):    函数体    return 返回值  示例:def hello():     print 'hello world'               # pr...
    99+
    2023-01-31
    第五天 python
  • 我的python学习--第四天
    一、首先是对前三天的学习内容进行复习  1、python基础的数据结构      数字(int/float,包括整数和浮点数)          布尔(boolean => True/False)      字符串(str,使用''或...
    99+
    2023-01-31
    第四天 python
  • 我的python学习--第三天
    第三天  1:列表及Python基础回顾  2:字典 列表字典生成式及应用场景  3:字符串 字典字符串转换及应用场景  4:文件操作 文件字典转换及应用场景  5:总结基础数据结构的知识脑图 -- 增删查改1、列表的操作:  help(l...
    99+
    2023-01-31
    python
  • 我的python学习--第十三天
    nginx + uwsgi + flask一、安装1、安装uwsgi[root@yaoliang day_13]# wget http://projects.unbit.it/downloads/uwsgi-2.0.4.tar.gz [ro...
    99+
    2023-01-31
    第十三天 python
  • 我的python学习--第七、八天
    Flask的HTTP方法HTTP(与web应用会话的协议)有许多不同的URL方法。默认情况下,路由只回应GET请求,但是通过route()装饰器传递methods参数可以改变这个行为。HTTP方法告知服务器,客户端想对请求的页面 做些什么。...
    99+
    2023-01-31
    python
  • 我的python学习--第十一天
    上午:作业讲解bootstrap-multiselect插件sweetalert插件下午:datatables----表格插件datetimepicker----时间插件Validform----表单验证插件锁定用户禁止登录---...
    99+
    2023-01-31
    第十一天 python
  • 我的python学习--第十二天(二)
    Python异常处理  Python的异常处理能力是很强大的,可向用户准确反馈出错信息。在Python中,异常也是对象,可对它进行操作。所有异常都是基类Exception的成员,所有异常都从基类Exception继承,而且都在excepti...
    99+
    2023-01-31
    二天 python
  • 我的python学习--第十四天(一)
    一、运维管理系统(基于Flask)回顾1、权限控制  通过session实现权限控制,session是一个全局字典,当用户登录时,可以获取到用户的用户名,通过查找数据库获取用户的权限保存进session中,在每次页面跳转时同过查询sessi...
    99+
    2023-01-31
    第十四天 python
  • 学习python的第五天(数据类型)
    一复习 1.查看数据类型 #数值10的位置 print(di(10)) #数值10的样式 print(type(10)) 2.关于变量的一些补充 a=1 b=1 c=1 #a,b,c三种位置判断 print(a is b is c) p...
    99+
    2023-01-31
    数据类型 第五天 python
  • 学习python的第十五天(函数的装饰器
    一.装饰器 1.函数装饰圈的定义 函数装饰器:一种装饰函数的函数 2.个人理解两层函数装饰器 两层函数装饰器个人觉得他其实就是把需要装饰的函数名丢入形参,然后用一个嵌套的函数对其头尾进行添加程序,但是不能减少他的程序内容,他的原来程序不...
    99+
    2023-01-31
    函数 python
  • 学习python第二天
    一、python的版本选择与安装后的操作 python 2 vs 3 1。 默认支持中文 2. 不兼容2.x 3. 核心语法调整,更易学 4. 新特性默认只在3.x上有 系统位数 32bit =内存的最大寻址空间是2**32, ...
    99+
    2023-01-31
    第二天 python
  • python 学习第四天
    目录 基本运算符 算术运算符 比较运算符 赋值运算符 逻辑运算符 身份运算符 pyth...
    99+
    2023-01-31
    第四天 python
  • python学习第二天
    目录 操作系统 操作系统干了什么 为什么要有操作系统 操作系统有什么用 应用程序的启动和操作系统的启动 ...
    99+
    2023-01-31
    第二天 python
  • python学习 第五篇 flask
    #!/usr/bin/env python #coding:utf-8 from flask import Flask,request,render_template,redirect #request 里面包含一次网络请求所有的内容,所有...
    99+
    2023-01-31
    第五篇 python flask
  • 学习python的第四天(python的
    一.Jupyter的安装以及运行 1.Jupyter的安装 运行CMD,在CMD中输入pip3 --default-timeout=100 install -U jupyter 再输入pip3 install jupyter_contr...
    99+
    2023-01-31
    第四天 python
  • python学习第二天 -----201
    第二周-第02章节-Python3.5-模块初识 #!/usr/bin/env python #-*- coding:utf-8 _*- """ @author:chenjisong @file: sys.py @time: 2019/...
    99+
    2023-01-31
    第二天 python
  • 学习python的第三天(变量)
    一.关于python 1.交互式 说一句解释一句 2.命令行式 1.编写文件并且保存 2.打开python解释器,在pyrhon中打开文本,读入内存(python打开的时候,翻译不是瞬间) 3.python解释文本 注意:第二阶段相当于...
    99+
    2023-01-31
    变量 python
  • 学习python的第二十天(dateti
    1.datetime模块(用于修改日期) import datetime print(datetime.datetime.now(),type(datetime.datetime.now())) 2019-06-10 19:37:55....
    99+
    2023-01-31
    十天 python dateti
  • Python学习笔记:第一天python
    目录 1. python简介 2. python的安装 3. 编写第一个helloword 4. 变量和常量 5. 数据...
    99+
    2023-01-30
    学习笔记 Python python
  • Python第五周 学习笔记(2)
    一、实现一个cache装饰器,实现可过期被清除的功能 简化设计,函数的形参定义不包含可变位置参数、可变关键词参数和keyword-only参数 可以不考虑缓存满了之后的换出问题 1)原始 def cache(fn): imp...
    99+
    2023-01-31
    学习笔记 Python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作