关于使用python开发web应用的几个库总结

Python与Web 开发 Python 在 Web 开发领域应用广泛,下面从常用框架、开发流程、优势以及一些注意事项几个方面详细介绍 Python 与 Web 开发。 阅读详情

怎么说呢,python可以算是救了我一命的一门语言,若不是他,恐怕公司的这个项目还遥遥无期,我会始终保有对他最崇高的敬意。

这里,我仅列出自己最近使用的几个库,并简单演示一下其高超的使用效率。

Python学习交流群:1004391443

1.jinja2

简介:一个模板替换类,衍生于django的Template,在很多地方做了加强。

中文支持:如果render渲染失败,请先将想要渲染的内容decode成对应编码。

备注:jinja2在renderXML等格式的文件的时候,不会自动替换html标签,这点有时候是好事~~,因为我并不用jinjia直接来往前台吐页面。

使用:

使用方法很简单:

from jinja2 import Template

template = Template('Hello {{ name }}!')

print template.render(name='World')

也支持不定函数变量的传递:

from jinja2 import Template

template = Template('''

   {{ name }}!

   {%if test0 > 8%}{{test1}} is larger ! {%endif%}

   {%if test1 > 8%}{{test1}} is larger ! {%endif%}

   {%if test2 > 8%}{{test2}} is larger ! {%endif%}

       ''')

alls = [8,9,10]

mapAll = {}

for i, ch in enumerate(alls):

   mapAll["test"+str(i)] = ch

print template.render(name='Hello!',**mapAll)

输出为:

Hello!! 

9 is larger ! 

10 is larger !

2.simplejson

简介:一个把python数据结构和json互相转化的类

中文支持:

支持,但是当需要dumps的数据中含有unicode字符的时候,需要指定ensure_ascii = False,如下:

outdata = simplejson.dumps(pydata,ensure_ascii = False)

备注:无

使用:

from django.utils import simplejson

strdata = simplejson.dumps({'ret':1})

print strdata

pydata = simplejson.loads(strdata)

print pydata['ret']

输出为:

{"ret": 1}

1

3.BeautifulSoup

简介:一个非常与众不同的解析HTML/XML的类库,用起来非常快捷,方便

中文支持:很好

备注:本博的糗事百科的vim插件就是用它来解析的html

使用:

假设待解析的数据如下(存在data中):

#<?xml version='1.0' encoding='gb2312' ?>                                                           

#<root>

#   <domain name='appbasesh.qzone.qq.com' operation='update'>

#       <ip inner='10.149.24.156' outer='180.153.2.222' isp='ctc' type='inner_ip'/>

#       <ip inner='10.150.16.29' outer='112.64.199.30' isp='cnc' type='com_proxy'/>

#       <ip inner='10.149.24.157' outer='180.153.2.223' isp='ctc' type='inner_ip'/>

#       <ip inner='10.149.24.158' outer='180.153.2.240' isp='ctc' type='inner_ip'/>

#       <ip inner='10.149.24.159' outer='180.153.2.241' isp='ctc' type='inner_ip'/>

#       <ip inner='10.149.24.160' outer='180.153.2.242' isp='ctc' type='inner_ip'/>

#   </domain>

#</root>

soup = BeautifulSoup(data,convertEntities=BeautifulStoneSoup.HTML_ENTITIES)

iplist = []

#获取所有包含属性type="inner_ip"的节点

allTags = soup.findAll(attrs={'type' : 'inner_ip'})

for tag in allTags:

   #获取属性列表

   for at in tag.attrs:

       #输出第一个属性的内容

       print at[0]

4.minidom

简介:生成XML的工具

中文支持:支持,但是需要如下注意:

1.minidom的设置属性的方法是setAttribute,提供两个参数,一个属性名,一个属性值。之前在文章中介绍过,即当两个字符串相连时,encode/decode必须一致。

2.当minidom输出时,如果想指定xml头的encode为utf-8,可以如下写:

print doc.toprettyxml(encoding='UTF-8')

但是这里的要求就是,如果指定了encoding,那么传入minidom的字符串都应该decode成对应encoding的。而且这样toprettyxml输出的结果是encode过的。

备注:无

使用:

doc = minidom.Document()

item_info = doc.createElement("item_info")

item_info.setAttribute('maxid','90012')

doc.appendChild(item_info)

for o in mman_objs:

   item = doc.createElement("item")

   item_info.appendChild(item)

   for k in o.keys():

       attrdata = unicode(obj[k])

       item.setAttribute(unicode(k),attrdata)

objdatas = doc.toprettyxml(encoding='UTF-8',indent = "   ").decode('utf-8')

OK,这几个工具可以说涵盖了web开发中常用的几种交互方式,HTML/XML,json,模板替换,使用起来如鱼得水啊~ 

python开发以太坊应用(使用web3) 目录 第一章,初识以太坊 第二章,以太坊之简易开发流程 第三章,以太坊之账户管理 第四章,以太坊之状态与交易 第五章,以太坊之智能合约 第六章,以太坊之过滤器 正文 ** 第一章,初识以太坊 ** 第一章 属于概述性的内容,暂时不写。以后补充上来。 ** 第二章,以太坊之简易开发流程 ** 在这一章,我们将完成一个简单的控制台应用,学习如何在命令行和在python中访问以太坊节点,并打... 阅读详情

相关推荐

python 写web前端的库

Gradio:Gradio 是专门为机器学习模型构建的。因此,如果您想专门为您构建的机器学习模型创建一个 Web UI,Gradio 的简单语法和设置是您的不二之选。Streamlit:如果您想快速启动和运行仪表板,并且可以灵活地添加大量组件和控件,则 Streamlit 非常有用。此外,Streamlit 允许您比 Dash 或 Flask 更快地构建 Web UI 或仪表板。Dash:如果你想成为大公司的生产就绪仪表板,请选择 Dash,因为它主要是为企业公司量身定制的。

weixin_43818488的博客 1695

使用minidom来处理XML的示例(Python 学习)(转载)

http://blog.youkuaiyun.com/ywchen2000/archive/2006/07/04/876742.aspx  http://blog.youkuaiyun.com/zhangj1012003_2007/archive/2010/04/23/5514807.aspxhttp://blog.youkuaiyun.com/zhangj1012003_2007/archive/2010/04/22/551492...

weixin_33717298的博客 228

【Python】Python框架和库推荐

无论是对网站数据进行抓取,还是进行API的调用,Requests都提供了简洁直观的接口,极大地简化了HTTP请求的操作。TensorFlow是一个由Google开发的开源机器学习框架,它支持深度学习计算,并提供了一套完整的工具来构建、训练和部署模型。Beautiful Soup库是处理HTML和XML文档的利器,它可以将复杂的HTML文档转换成易于操作的树形结构。在众多Python框架和库中,有几款特别受到开发社区的欢迎,因为它们在不同的应用领域中展现出了极高的效率和便捷性。

wjianwei666的专栏 122

python代码格式转换

【代码】python代码格式转换。

m0_72129546的博客 622

基于Mind+、MOTT实现人工智能

@基于Mind+、MOTT实现人工智能 人工智能实验 一、实验目的及要求 【一】实现人脸识别 【二】实现云数据库应用 【三】实现测温数据mqtt上传至物联网云平台 二、实验原理与内容 基于二哈实现多人人脸学习和识别 基于TinywebDB实现云数据库应用 基于EasyIoT实现mqtt数据上传。 三、实验软硬件环境 硬件:掌控板 软件:Mind+ 四、实验过程(实验步骤、记录、数据、分析) 1.基于二哈实现多人人脸学习和识别 ①在Mind+扩展上的传感器选项选择HUSKYLENS AI 摄像头 ②配置哈士

weixin_44606930的博客 2379

网络虚拟化介绍(OVS、DVS)

网络虚拟化概念网络虚拟化就是把网络层的一些功能从硬件中剥离出来,建立新的网络虚拟层;该虚拟层可以接管网络服务和配置,实现网络服务与物理层的解耦,打破物理资源限制;通过网络虚拟层能够在一个物理网络上模拟出多个逻辑网络,并且多用户在逻辑网络上相互隔离,保证网络安全网络虚拟化的特点隔离性:不同租户的流量相互之间不能互访;但是IP/MAC地址都可以独立规划可移动性:虚拟机可以跨二层/三层迁移,甚至可以跨广域网迁移(迁移前后虚拟机Vlan和IP地址都不会发生变化)可扩展性:逻辑网络的规模和数量可扩展。

m0_49864110的博客 1万+

python将数据写入xml文件_python读取,写入和更新xml文件

VOC数据集的标注文件都是xml格式,最近需要频繁处理xml文件的读取和更新,整理下python处理xml文件的方法。XML 指可扩展标记语言(eXtensible Markup Language), 被设计用来传输和存储数据。python中有三个模块解析xml文件:DOM, ElementTree,SAX1. DOM(Document Object Model)DOM是个跨平台的标准模型,W3C...

weixin_39958137的博客 1244

EEGLAB+ERPLAB实战:从.cnt文件到情绪ERP差异波,一份避坑指南

本文详细介绍了使用EEGLAB和ERPLAB处理Neuroscan的.cnt格式脑电数据的全流程,从数据导入、预处理到情绪ERP差异波生成。重点解决了采样率验证、事件标记检查、重参考选择、滤波策略与ICA组合等实操难题,并提供了情绪图片ERP研究中P1、EPN和LPP成分的分析技巧,帮助研究者避免常见错误,提升数据处理效率。

weixin_26795617的博客 266

python 修改、创建XML文件

写入xml文件的时候,注意空格(16个空格,当然也可以用 \t 代替) from xml.dom.minidom import Document from PIL import Image f = open('20038.xml', 'w') f.write(Document().toprettyxml(indent=" ")) f.writelines('<annotatio...

JUST CODE IT 1012

PowerBI参数化实战:3分钟搞定动态数据源切换(附常见错误排查)

本文详细介绍了PowerBI参数化实战技巧,教你3分钟实现动态数据源切换。通过创建参数、改造查询和测试切换三步,轻松应对多环境部署与团队协作中的路径问题,并附上常见错误排查指南,有效提升报表的可维护性和工作效率。

p1q2r的博客 586

MATLAB实战:用ARMAX模型搞定电力系统惯量评估(附完整代码)

本文详细介绍了如何利用MATLAB中的ARMAX模型进行电力系统惯量评估,解决新能源占比提高带来的系统惯量下降问题。通过系统辨识技术,从电网运行数据中准确提取惯量参数,并提供完整的代码实现,帮助工程师快速应用于实际工程。

peach的博客 638

用 Python 开发交互式 Web 应用,So easy

今天分享一个让开发交互式 Web app 超级简单的工具,不会 HTML,CSS,JAVASCRIPT 也没事。交互式 Web app 非常实用,比如说做一个问卷调查页面、一个投票系统、一个信息收集表单,上传文件等等,因为网页是可视化的,因此还可以作为一个没有服务端的界面应用程序而使用。如果你有这样的开发需求,那用 Python 真的是太简单了。

Trb701012的博客 2020

银河麒麟服务器操作系统V10 SP1:跨架构激活与设备更换无忧指南

本文详细解析了银河麒麟服务器操作系统V10 SP1的跨架构激活新特性。该特性彻底解除了授权与CPU架构的绑定,允许同一份授权在x86、ARM、龙芯等不同架构服务器间灵活使用。文章提供了从新设备激活到硬件更换后保持激活状态的全流程实战指南,并分享了内网环境部署等高级技巧,助力企业简化运维、提升硬件资源管理灵活性。

ff678的博客 353

八款常用的 Python GUI 开发框架推

作为Python开发者,你迟早都会用到图形用户界面来开发应用。本文将推荐一些 Python GUI 框架,希望对你有所帮助,如果你有其他更好的选择,欢迎在评论区留言。 Python 的 UI 开发工具包Kivy Kivy是一个开源工具包能够让使用相同源代码创建的程序能跨平台运行。它主要关注创新型用户界面开发,如:多点触摸应用程序。Kivy还提供一个多点触摸鼠标模拟器。当前支持的平台包括:Lin...

weixin_32734143的博客 1462

告别PlatformIO!用Arduino IDE搞定ESP32上的micro-ROS 2.0.5(Humble版)

本文详细介绍了如何从PlatformIO迁移到Arduino IDE以支持ESP32上的micro-ROS 2.0.5(Humble版)。内容涵盖环境配置、项目转换、常见问题解决及高级优化技巧,帮助开发者顺利过渡并充分利用Arduino IDE的官方支持优势。

weixin_33709590的博客 378

SpringAI系列 - MCP篇(二) - MCP Server Boot Starter

此处需注意之前的。

罗小爬的技术宝书 1321

开发交互式 Web 应用,从未如此简单

今天分享一个让开发交互式 Web app 超级简单的工具。不会HTML,CSS,JAVASCRIPT 也没事。交互式 Web app 非常实用,比如说做一个问卷调查页面、一个投票系统、一...

somenzz的博客 1318

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Python 入门必备:了解概念、应用场景和主流库框架

在本文中,我们将介绍Python的一些概念和应用场景,并分享一些我个人喜欢的Python库和框架,希望能够为你的Python学习之旅提供一些启示和帮助。通过学习Python,你可以轻松地创建各种类型的应用程序和项目,从简单的脚本到复杂的Web应用程序和数据科学项目。在学习Python的过程中,建议从基础开始,逐渐掌握Python的核心语法和概念,然后再深入学习各种Python库和框架。这些只是我个人喜欢的一些Python库和框架,当然还有很多其他优秀的Python工具和库,可以满足不同的需求和应用场景。

weixin_43170061的博客 335

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

11 个 Python全栈开发工具集_python全栈开发框架有哪些

以下是专注于全栈开发不同方面的 Python 库;有些专注于 Web 应用程序开发,有些专注于后端,而另一些则两者兼而有之。

2401_84562041的博客 1118

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

python库_数据科学家必须知道的前十大PYTHON库

Python是最流行和最广为人知的编程语言之一,它已取代了业界的许多编程语言。它是数据科学专业人士最喜欢使用的编程语言之一,因为它拥有庞大的库。Python因其简单易用而被称为初学者级编程语言,它的编程语法易于学习,并且与C,Java和C ++相比具有较高的水平。为了获得更准确的算法和编码,Analytics Insight给出前10个Python库PyTorchPytorch是一个开源库,它基本...

weixin_39943868的博客 139

Python Web开发的完整指南

博客:https://somenzz.cn,电脑阅读更方便,阅读原文可访问文中的链接。学了 Python 这么长时间了,终究觉得编程语言仅仅是个工具,要想通过技术实现自己的价值,终究离不...

somenzz的博客 1万+

Python 开发者必看,用Flet库打造你的第一个Web应用

Flet是一个开源库,旨在使Python开发者能够轻松地构建和部署Web应用。它提供了一套简洁的API,让你可以通过Python代码创建交互式的Web界面,而无需深入了解HTML、CSS和JavaScript。

xyh2004的博客 2889

Python做web开发,推荐几个能立马上手的小项目

做web开发,什么语言最好? 所有的编程语言都能进行开发web,java就不用多说了,PHP从应用范围到岗位需求来说都是很强的,Python+Flask的框架也让人非常惊艳。其实没有什么最好,适合的才是最好;不过——   Python这门优美的语言是非常适合web开发的,基于Python的Django框架简单便捷且很强大。 那么作为新手该如何上手这门语言?一切不敲代码的学编程手段都是扯...

Q2605894893的博客 5万+

【Python Web开发】Python Web开发知识全解析

Web 开发是指使用编程语言和技术构建基于浏览器的应用程序。Web 应用程序是用户通过网络浏览器访问的动态页面,它可以提供诸如登录、数据提交、交互等功能。前端:涉及到用户在浏览器中看到并与之交互的部分,主要由 HTML、CSS、JavaScript 等构建。后端:负责处理业务逻辑、数据库交互、安全性等,Python 作为后端语言非常适合处理这些复杂的任务。Python Web 开发因其简洁性、可扩展性和强大的框架生态系统,成为了现代 Web 开发的重要选择。

萧鼎的博客 5105

Python Django 5 Web应用开发实战

本文主要介绍了Python Django 5 Web应用开发实战,希望能对学习Python Web应用开发的同学们有所帮助。 文章目录 1. 前言 2. 书籍推荐 2.1 内容简介 2.2 本书作者 2.3 本书目录 2.4 适合读者 3. 购买链接

weixin_43178406的博客 2万+
上一篇: Python处理MP3的歌词和图片!
下一篇: 想用Python爬小姐姐图片?那你得先搞定分布式进程 !
普通网友
博客等级 码龄7年 438粉丝 263原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值