位置: 编程技术 - 正文

基于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计算两日期间隔月份)

  • 旅游业成本具体有哪些
  • 建筑业的增值税税率是多少
  • 领用库存商品用于固定资产
  • 收到社保局退回的社保费
  • 员工福利开的专票怎么做分录
  • 企业出租房产增值税率
  • 按工程进度支付工程款怎么描述
  • 小规模残疾人交多少税收
  • 税务等级低有什么影响
  • 异地施工如何缴工会经费
  • 委托进口增值税如何抵扣
  • 开业赠送礼品会计属于什么费用
  • 支付股东借款利息怎么交税
  • 认证抵扣完的发票怎么处理
  • 汇算清缴时资产总额如何计算
  • 清算时公司亏损预交所得税能退吗
  • 销售原材料结转会计分录
  • 定金转为货款如何表述
  • 先收钱后开票怎么做分录
  • 去银行打回单需要带身份证吗
  • 硝铵磷肥的肥效期
  • 消费税的计算公式推导过程
  • 民间非营利组织会计科目
  • 股票质押得到的钱怎么算
  • 物流公司支付运费怎么做账
  • 应收账款期末怎么算
  • 预缴增值税附加税款怎么填写申报表
  • mac如何打印预览
  • windows已禁用
  • linux乱码怎么改
  • 黑枣的功效与作用图片
  • ecap.exe是什么
  • 金融资产的会计处理方法
  • php中的pdo
  • 淘宝前端用什么写的
  • 费用冲账的会计分录
  • linux运行c++程序
  • 微信小程序开发公司
  • iperf3命令和iperf2
  • fsck命令详解
  • 怎样计提购销合同印花税
  • 什么是支付宝账号如何查看
  • 织梦系统网站搭建教程
  • 预交的诉讼费怎么做账
  • php网站访问量大怎么优化
  • 车间领用五金配件入什么科目
  • 存货盘亏毁损处理方法
  • 事业单位体检费标准是多少
  • 福利费专票必须抵扣再转出吗
  • 其他综合收益和营业外收入的区别
  • 差额征收的会计分录
  • 公司破产账务处理
  • 股权转让,受让方的会计分录
  • 银行收到工伤保险费怎么做分录
  • 收到了对方的作业怎么办
  • 苹果os X El capitan无法更新了吗
  • win10预览版和正式版区别
  • win2008定时任务设置
  • w10简易版
  • win7安装kb3170455失败
  • javascriptj
  • js加载失败怎么办
  • unity调用c++动态库
  • KBEngine v0.4.0 发布,分布式游戏服务端引擎
  • TypeScript Type Innference(类型判断)
  • javascript制作简易计算机
  • vue项目简介
  • unity3drpg游戏
  • java模拟银行存款功能
  • 普通话的对话
  • kraken框架
  • js如何使用cookie
  • 国家企业税务总局
  • 开展税务培训
  • 陕西地方税务局2017年2号公告
  • 买车险代收车船税多少钱
  • 河北省税务局稽查局领导班子
  • 房地产对外投资契税
  • 税法难吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设