位置: 编程技术 - 正文

基于Python_脚本CGI、特点、应用、开发环境(详解)(python的脚本)

编辑:rootadmin

推荐整理分享基于Python_脚本CGI、特点、应用、开发环境(详解)(python的脚本),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python脚本100例,脚本 python,python脚本100例,python脚本编写教程,python脚本100例,pythoni脚本,python脚本编写教程,pythoni脚本,内容如对您有帮助,希望把文章链接给更多的朋友!

CGI

CGI 目前由NCSA维护,NCSA定义CGI如下:

CGI(Common Gateway Interface),通用网关接口,它是一段程序,运行在服务器上如:HTTP服务器,提供同客户端HTML页面的接口。

CGI程序可以是Python脚本、Perl脚本、Shell脚本、C或者C++程序等。

服务器

在你进行CGI编程前,确保您的Web服务器支持CGI及已经配置了CGI的处理程序。

所有的HTTP服务器执行CGI程序都保存在一个预先配置的目录。这个目录被称为CGI目录,并按照惯例,它被命名为/var/www/cgi-bin目录。

CGI文件的扩展名为.cgi,python也可以使用.py扩展名。

默认情况下,Linux服务器配置运行的cgi-bin目录中为/var/www。

如果想指定的其他运行CGI脚本的目录,可以修改httpd.conf配置文件,如下所示:

程序

使用Python创建第一个CGI程序,文件名为hello.py,文件位于/var/www/cgi-bin目录中,内容如下,修改文件的权限为:

以上程序在浏览器访问显示结果如下:

1、 Hello World! This is my first CGI program

这个的hello.py脚本是一个简单的Python脚本,脚本第一的输出内容"Content-type:text/htmlrnrn"发送到浏览器并告知浏览器显示的内容类型为"text/html"。

环境变量

所有的CGI程序都接收以下的环境变量,这些变量在CGI程序中发挥了重要的作用:

以下是一个简单的CGI脚本输出CGI的环境变量:

特点

优点

简单:Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样。它使你能够专注于解决问题而不是去搞明白语言本身。

易学:Python极其容易上手,因为Python有极其简单的说明文档 。

速度快:Python 的底层是用 C 语言写的,很多标准库和第三方库也都是用 C 写的,运行速度非常快。

免费、开源:Python是FLOSS(自由/开放源码软件)之一。使用者可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。

高层语言:用Python语言编写程序的时候无需考虑诸如如何管理你的程序使用的内存一类的底层细节。

可移植性:由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。这些平台包括Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/、BeOS、OS/、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE、PocketPC、Symbian以及Google基于linux开发的android平台。

解释性:一个用编译性语言比如C或C++写的程序可以从源文件(即C或C++语言)转换到一个你的计算机使用的语言(二进制代码,即0和1)。这个过程通过编译器和不同的标记、选项完成。

运行程序的时候,连接/转载器软件把你的程序从硬盘复制到内存中并且运行。而Python语言写的程序不需要编译成二进制代码。你可以直接从源代码运行 程序。

在计算机内部,Python解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。这使得使用Python更加简单。也使得Python程序更加易于移植。

面向对象:Python既支持面向过程的编程也支持面向对象的编程。在“面向过程”的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在“面向对象”的语言中,程序是由数据和功能组合而成的对象构建起来的。

可扩展性:如果需要一段关键代码运行得更快或者希望某些算法不公开,可以部分程序用C或C++编写,然后在Python程序中使用它们。

可嵌入性:可以把Python嵌入C/C++程序,从而向程序用户提供脚本功能。

丰富的库:Python标准库确实很庞大。它可以帮助处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统有关的操作。这被称作Python的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如wxPython、Twisted和Python图像库等等。

规范的代码:Python采用强制缩进的方式使得代码具有较好可读性。而Python语言写的程序不需要编译成二进制代码。

缺点

单行语句和命令行输出问题:很多时候不能将程序连写成一行,如import sys;for i in sys.path:print i。而perl和awk就无此限制,可以较为方便的在shell下完成简单程序,不需要如Python一样,必须将程序写入一个.py文件。

独特的语法

这也许不应该被称为局限,但是它用缩进来区分语句关系的方式还是给很多初学者带来了困惑。即便是很有经验的Python程序员,也可能陷入陷阱当中。最常见的情况是tab和空格的混用会导致错误,而这是用肉眼无法分别的。

运行速度慢:这里是指与C和C++相比。

应用

基于Python_脚本CGI、特点、应用、开发环境(详解)(python的脚本)

系统编程:提供API(Application Programming Interface应用程序编程接口),能方便进行系统维护和管理,Linux下标志性语言之一,是很多系统管理员理想的编程工具 。

图形处理:有PIL、Tkinter等图形库支持,能方便进行图形处理。

数学处理:NumPy扩展提供大量与许多标准数学库的接口。

文本处理:python提供的re模块能支持正则表达式,还提供SGML,XML分析模块,许多程序员利用python进行XML程序的开发。

数据库编程:程序员可通过遵循Python DB-API(数据库应用程序编程接口)规范的模块与Microsoft SQL Server,Oracle,Sybase,DB2,MySQL、SQLite等数据库通信。python自带有一个Gadfly模块,提供了一个完整的SQL环境。

网络编程:提供丰富的模块支持sockets编程,能方便快速地开发分布式应用程序。很多大规模软件开发计划例如Zope,Mnet 及BitTorrent. Google都在广泛地使用它。

Web编程:应用的开发语言,支持最新的XML技术。

多媒体应用:Python的PyOpenGL模块封装了“OpenGL应用程序编程接口”,能进行二维和三维图像处理。PyGame模块可用于编写游戏软件。

pymo引擎:PYMO全称为python memories off,是一款运行于Symbian SV3,Symbian3,SV5, Symbian3, Android系统上的AVG游戏引擎。因其基于python2.0平台开发,并且适用于创建秋之回忆(memories off)风格的AVG游戏,故命名为PYMO。

黑客编程:python有一个hack的库,内置了你熟悉的或不熟悉的函数,但是缺少成就感。

用Python写简单爬虫

首先,要通过urllib2这个Module获得对应的HTML源码。

1,import urllib2 #调用urllib2

2,url=' #把等号右边的网址赋值给url

3,html=urllib2.urlopen(url).read() #html随意取名 等号后面的动作是打开源代码页面,并阅读

4,print html #打印

可以看到url的信息存储在span标签中,要获取其中的信息可以用正则式。

开发环境

●IDLE:Python内置IDE (随python安装包提供)

●PyCharm :详见百度百科PyCharm,由著名的JetBrains公司开发,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工 具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。此外,该IDE提供了一些高级功能,以用于支持Django框架下的专业Web开发。

●Komodo和Komodo Edit:后者是前者的免费精简版

●Spyder:安装Anaconda自带的高级IDE

●PythonWin:ActivePython或pywin均提供该IDE,仅适用于Windows

●SPE(Stani's Python Editor):功能较多的自由软件,基于wxPython

●Ulipad:功能较全的自由软件,基于wxPython;作者是中国Python高手limodou

●WingIDE:可能是功能最全的IDE,但不是自由软件(教育用户和开源用户可以申请免费key)

●Eric:基于PyQt的自由软件,功能强大。全名是:The Eric Python IDE

●DrPython

●PyScripter:使用Delphi开发的轻量级的开源Python IDE, 支持Python2.6和3.0。

●PyPE:一个开源的跨平台的PythonIDE。

●bpython: 类Unix操作系统下使用curses库开发的轻量级的Python解释器。语法提示功能。

●eclipse + pydev插件:方便调试程序

●emacs:自带python支持,自动补全、refactor等功能需要插件支持

●Vim: 最新7.3版编译时可以加入python支持,提供python代码自动提示支持

●Visual Studio + VisualPython:仅适用Windows,已停止维护,功能较差

●SlickEdit

●Visual Studio + Python Tools for Visual Studio

●TextMate

●Netbeans IDE

●Sublime

●ipython

另外,诸如Notepad++、EditPlus、UltraEdit等通用的程序员文本编辑器软件也能对Python代码编辑提供一定的支持,比如代码自动着色、注释快捷键等,但是否够得上集成开发环境的水平,尚有待评估。

以上这篇基于Python_脚本CGI、特点、应用、开发环境(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持积木网。

Python计算两个日期相差天数的方法示例 本文实例讲述了Python计算两个日期相差天数的方法。分享给大家供大家参考,具体如下:#!/usr/bin/pythonimporttimeimportsysdefdateinput():date=raw_input('pleaseinputthefi

Python生成密码库功能示例 本文实例讲述了Python生成密码库功能。分享给大家供大家参考,具体如下:这个代码是将字符的所有组合添加到一个文件中,可以设置密码的最大长度

python bottle框架支持jquery ajax的RESTful风格的PUT和DELETE方法 这两天在用python的bottle框架开发后台管理系统,接口约定使用RESTful风格请求,前端使用jqueryajax与接口进行交互,使用POST与GET请求时都正常,而RequestMeth

标签: python的脚本

本文链接地址:https://www.jiuchutong.com/biancheng/372348.html 转载请保留说明!

上一篇:浅谈django model的get和filter方法的区别(必看篇)(django中的model)

下一篇:Python计算两个日期相差天数的方法示例(python计算两日期间隔月份)

  • 金蝶kis暂存的凭证怎样
  • 银行日记账必须一年一本吗
  • 万元版增值税发票最多可以开多少
  • 持续经营净利润率怎么算
  • 小规模纳税人申请一般纳税人流程
  • 合伙企业应纳税所得额公式是什么
  • 小规模纳税人财务报表是按季还是按月申报
  • 长期股权投资权益法下初始投资成本
  • 资产重组过程中资产转出的税收问题
  • 坏账转销会计分录应收帐款金额怎么写
  • 银行手续费发票怎么开
  • 小企业所得税申报流程
  • 公司租的房子免租金要交房产税吗?
  • 小规模企业给别人开16万增值税专用发票
  • 如何正确理解新制度经济学与新古典经济学的关系
  • 销售坚果税率多少
  • 做季报和月报增发的区别
  • 合伙项目如何进行分红
  • 购房时收取的卖方费用
  • 带息票据贴现金额怎么算
  • 1697506445
  • 企业年检网上申报时间
  • 高新企业最新政策2020
  • win10取消登陆密码
  • 加油站的成品油经营许可证过期3个月还能换证吗?
  • w10触摸键盘
  • 应收账款与主营业务收入的比率
  • deepin 设置
  • 对公账户发放工资要固定几号打吗
  • 个人所得税计提缴纳会计分录
  • win10右键菜单管理在哪打开
  • 确认坏账的会计处理
  • 采购物资发生什么费用
  • 猫鼬家族风云
  • 对外支付代扣代缴附加税享受减免吗
  • 申报个人所得税是按应发工资还是实发工资
  • 融资购入的固定资产如何记账
  • 小规模纳税人的个人所得税怎么算
  • 大前端最新
  • 填报的资产总额在季初和季末存在差异是什么意思
  • 库存品处理的方式
  • mysql 服务器配置
  • mysql profiles
  • 什么情况下适用简易程序
  • 在建工程账务怎么会转到预收账款
  • 个人转让房产税率
  • 劳务派遣人员代招聘多少钱一个人
  • 收回客户货款会计分录怎么写
  • 提取的安全生产费
  • 付转让费计入什么科目
  • 电子发票怎么会失效
  • 现金账务处理原则规定
  • sqlserver 索引
  • c3p0连接池提供了哪些方式来配置连接池的参数
  • 屏幕右下角显示A2
  • msi安装错误代码2503
  • 屏幕共享远程控制
  • bios 设置
  • win8固态硬盘
  • win ubuntu
  • centos安装位置选择
  • mac系统不能升级怎么办
  • 利用windows资源管理
  • macbookair控制面板
  • powerdvd remote下载
  • win7系统如何修改ip地址
  • win7笔记本触摸板怎么开启
  • opengl详解
  • easyui validatebox验证
  • javascript基础
  • perl脚本执行顺序
  • (cocs2dx)二、 利用Eclipse编译apk应用
  • dom编程艺术这本书好吗
  • JQuery中Ajax()的data参数类型实例分析
  • python方法有哪些
  • 国税怎么打印发票
  • 百旺税控盘口令认证失败PiN被锁
  • 四川省地方税务局关于城镇土地使用税困难减免
  • 如何查询车辆购置税
  • 残疾人就业有哪些选择
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设