A. python主要用于web开发还是桌面开发
python最初主要用于编写系统维护脚本,但也可以用于web开发和桌面开发。
在web开发方面,有从轻到重量级不同的很多框架,比如web.py, Django, TurboGears, Zope等,其中Zope已经达到了企业级应用的量级。
而python做桌面开发(GUI)个人感觉不是很好,主流应该是用wxPython库,但是界面设计工具不够完善。
python开发的web应用理论上来说可以部署在IIS上,但估计没有人这么做,一般都会选择apache或者Nginx。
B. python 进行web 开发 怎么配置环境
Python的目前有两个版本,Python 2.7.5 和 Python 3.3.2。Python 3.x 与 2.x 不仅仅是版本的新旧的区别那么简单,Python3.x 是一个全新的东西。
1、下面的 Python 2.7.5 这个版本是 .msi 格式的,所以直接安装即可,将 Python 2.7 安装在了 E:Python 下。
然后就是配置环境变量, 具体不多说,直接附图:
C. 为什么Python没有标准的GUI库
gui 框架和 web 框架一样,都是复杂程序很高的软件,不是说想做一个就很快地从头做一个的。况且在设计哲学还不统一,要弄个标准谈何容易。
如果标准指的是标准库,那 tkinter 就是了。
据我所知 wxpython 应该是有点事实上的标准的味道,当然 gtk 的 fans 肯定要不同意了。
D. Python Web开发比较流行的框架都有什么
目前Python流行的Web框架包括:Django、Flask和Tornado。框架把构建Web应用的通用的代码进行了封装,把相应的模块组织起来,使用Web框架可以更轻松、快捷的创建web应用,不用去关注一些底层细节。
1、Django框架
Django是基于Python的免费和开放源代码Web框架,它遵循模型-模板-视图(MTV)体系结构模式。它由Django Software Foundation(DSF)维护,这是一个由非营利组织成立的独立组织。Django对基础的代码进行了封装并提供相应的 API,开发者在使用框架是直接调用封装好的 API 可以省去很多代码编写,从而提高工作效率和开发速度。
Django的设计理念如下:
①松耦合——Django的目标是使堆栈中的每个元素彼此独立。
②更少的编码——更少的代码,因此可以快速开发。
③不重复自己(DRY)——一切都应该只在一个地方开发,而不是一次又一次地重复。
④快速开发——Django的理念是尽一切可能促进超快速开发。
⑤简洁的设计——Django严格按照自己的代码维护简洁的设计,并易于遵循最佳的Web开发实践。
Django的一些优势如下:
①对象关系映射(ORM)支持——Django在数据模型和数据库引擎之间建立了桥梁,并支持包括MySQL,Oracle,Postgres等在内的大量数据库系统。
②多语言支持——Django通过其内置的国际化系统支持多语言网站。因此,您可以开发支持多种语言的网站。
③框架支持——Django内置了对Ajax,RSS,缓存和其他各种框架的支持。
④GUI——Django为管理活动提供了一个很好的即用型用户界面。
⑤开发环境——Django带有轻量级的Web服务器,以促进端到端应用程序的开发和测试。
⑥Django是Python Web框架。和大多数现代框架一样,Django支持MVC模式。
2、Flask框架
Flask 是 Python 编写的一种轻量级 ( 微 ) 的 Web 开发框架,只提供 Web 框架的核心功能,较其他类型的框架更为的自由、灵活、更加适合高度定制化的 Web 项目。Flask 在功能上面没有欠缺,只不过更多的选择及功能的实现交给了开发者去完成,因此 Flask 对开发人员的水平有了一定的要求。
3、Tornado框架
在之前的学习过程当中,学习过了 Flask 和 Django 这两个 Python Web 框架,现在来认识一个更加复杂但是高效的 Python Web 框架 : Tornado。
Tornado 是 Python 编写的一个强大的可扩展的 Web 服务器,在处理高网络流量的时候表现的足够强大,但是在创建的时候,和 Flask 类似又足够轻量,并且可以被用到大量的工具当中。相对于其他的框架,
Tornado 有如下特点:
1、完整的 Web 开发框架,和 Django,Flask 一样,Tornado 也提供了路由映射,request 上下文,基于模板的页面渲染这些功能。
2、同样是一个高效的网络库,性能可以和 Python 的 Twisted,Gevent 等底层框架媲美,同时提供了异步IO, 超时事件处理,功能,这样 twisted 除了做 Web 之外还可以做爬虫,物联网关或者游戏服务器等后台应用。
3、提供了高效的 HTTPClient, 除了服务器端框架,还提供了基于异步框架的 HTTP 客户端
4、提供了高效的内部服务器,Tornado 的内部服务器可以直接用于生产环境
5、完备的 WebSocket 支持
关于Python的基础问题可以看下这个网页的视频教程,网页链接,希望我的回答能帮到你。
E. 如何快速使用Python的Web框架如Django 制作GUI
第一步(Model):设计自己的数据模型。
第二步(View):创建网页模板。Django自己的Html模板语言,非常容易将数据和模板结合起来,创建动态页面。
第三步(Control):定义URL,提供服务和控制。
F. python3 gui编程 哪个好
Python本身语法优美, 但一旦到了GUI就丑陋得不行.
wxPython PyQT都要用一种不够优美的方式来描述GUI.
而且你有个很尴尬的问题, 要不要学一个你根本无法掌控的工具?
你花了钱买了本 wxPython in Action, 学熟练了. 这好了. Py3来了. 社区更新不到. 甚至哪天项目作者挂了, 参见web.py, 你怎么办? 虽然肯定会有大牛去接手, 但效率呢? 你本质上不是在学习GUI编程, 而是在学习如何使用工具.
就是说, 你学这些GUI, 根本上就是将自己绑定在了上面. Python最为人诟病的地方就是, Python 永远要依靠别的库来扩展, 没有一种完全意义上的独立性. 如果真能做到Java那种程度, 独立不独立也无所谓了.
所以, 我个人建议, 在这个不是桌面为王的时代. 买本HTML5的书, 用Python的WEB框架, 建立一个本地服务器..虽然说又要学HTML5很麻烦, 但相比于用桌面各种各样的GUI描述语言, HTML那种标签化设计已经简单很多了. 你完全不需要管理内存, 不需要担心异步的处理. 为下一步的在线化铺平道路.
Python是什么都能做一点, 但什么都有替代品. 那就要发挥Python的优势, 整合资源啊! 将GUI的渲染交给浏览器. 将逻辑的处理交给Python.
Python+HTML5+JS+Python框架使用经验, 对未来也有好处.
你需要做的, 就是写好一个模板, 然后用框架表现出来.
G. 如何学习 Python GUI 编程
初学可以先学习tkinter模块的用法,
但是很多的书上介绍的太简短,不方便系统的学习掌握,这样的话可以好好利用网络资源,网上关于tkinter模块有很多博客和文章可供参考学习,十分方便的。
找准一个方向一直走到底。因为GUI方案很多。如果均都是浅尝辄止就什么也做不好。
QT可以用心做一下。不过虽然界面很好看。功能强大。不过里面有些坑。这个东东,国外的人也喜欢用。
wxWindows很强大。如果习惯在windows下编程方式的老程序员,可以使用这个。特别是delphi熟悉的人。
TKinter,这个就是玩具。偶尔写几句可以,仅限于对话框。IDLE就是它写的。一些linux的管理工具也是它写的。比如输入法,监控什么的。好在是python内置的。
gtk,这是高性能制图必须的。如果对性能要求很高的制图软件,就一定走这条路。游戏也是。
pygame,这个一直印象不太好,入门级游戏程序GUI。
还有些其它的科学制图工具,还有graphics之类的。都是偶尔用一下。
建议你用WEB界面做GUI开发。这样就海阔天空了。
H. python用于web开发的第三方库有哪些
1. wxPython
wxPython 是一个跨平台的 GUI 工具集,是 Python 语言的一套优秀的 GUI 图形库,允许程序员创建完整的、功能键全的 GUI 用户界面。它以wxWidgets为基础,可以分别在Windows、Mac OS、Linux上调用它们的本地组件,让 GUI 程序在不同的平台上显示对应的风格。
2. Kivy
Kivy 是一个开源库,能够让使用相同源代码创建的程序实现跨平台运行,而且它还可以做创新型用户界面开发,如果有做创新型用户界面的可以关注一下。
3. Dabo
Dabo是一个跨平台的应用程序开发框架,它使用Python语言开发,基于wxpython的再封装库。作为一个跨平台应用开发框架,它可以用来建立以数据为中心的应用程序,而且还提供数据库访问,商业逻辑以及用户界面。
4. Flexx
Flexx 是一个Python工具包,可以用来创建图形化界面程序,还支持使用 Web 技术进行界面的渲染,只要有 Python 和浏览器就可以运行。
5. Tkinter
这是一个跨平台图形用户界面GUI开发工具,是Tk图形用户界面工具包标准的Python接口,它很轻量,而且可以运行于绝大多数的Unix平台、Windows和Macintosh系统。
6. PyQt
PyQt 是一个非常全面的库,是Python编程语言和Qt库的成功融合。Qt本身是一个扩展的C++ GUI应用开发框架,可以在UNIX、Windows和Mac OS X上运行,而且能跨平台使用,被广泛应用于许多行业。
7. PyGTK
PyGTK 主要适用于 Linux/UNIX 系统,基于老版本的 GTK+2 的库提供绑定,借助于底层 GTK+2 所提供的各种可视化元素和组件,能开发出在 GNOME 桌面系统上运行的软件。值得一提的是,PyGTK 对 GTK+2 的C语言进行了简单封装,提供了面向对象的编程接口。
8. Pywin32
Windows Pywin32 库允许我们像 VC 一样的形式使用 Python 开发 win32 应用。Pywin32提供了很多访问windows的API。较重要的三个模块就是win32api、win32gui和win32con。
I. python的用途和优点
python的用途:
python也是一门程序语言。能写各种各样的程序。
优点:
1.支持OOP编程 从根本
上讲Python仍是一种面向对象的语言,支持多态、继承等高级概念,在Python里使用OOP十分容易 没有C++、Java那样复杂,但不必做Python下OOp高手,够用即可。
2. 免费Python的使用是完全免费的,您可以从网络上免费下载、安装使用, Python上的其他程序包,也可下载安装使用。 Python的免费的同时又有很多的的社区对用户的提问提出快速的技术支持,学习和使用Python技术不再是一个人在战斗!
3. 可移植性 Python的实现是用ansi c编写的,可以运行在目前所有主流平台上,手机、pad上均可运行Python程序,其下的程序包也具有可移植性。
4. 功能强大 从特性的观点上看,Python是一个混合体,他丰富的工具集使得他介于传统的脚本语言和系统语言之间。
拓展资料:
设计定位
Python的设计哲学是"优雅"、"明确"、"简单"。因此,Perl语言中"总是有多种方法来做同一件事"的理念在Python开发者中通常是难以忍受的。Python开发者的哲学是"用一种方法,最好是只有一种方法来做一件事"。
在设计Python语言时,如果面临多种选择,Python开发者一般会拒绝花俏的语法,而选择明确的没有或者很少有歧义的语法。由于这种设计观念的差异,Python源代码通常被认为比Perl具备更好的可读性,并且能够支撑大规模的软件开发。这些准则被称为Python格言。在Python解释器内运行import this可以获得完整的列表。
Python开发人员尽量避开不成熟或者不重要的优化。一些针对非重要部位的加快运行速度的补丁通常不会被合并到Python内。所以很多人认为Python很慢。不过,根据二八定律,大多数程序对速度要求不高。在某些对运行速度要求很高的情况,Python设计师倾向于使用JIT技术,或者用使用C/C++语言改写这部分程序。可用的JIT技术是PyPy。
Python是完全面向对象的语言。函数、模块、数字、字符串都是对象。并且完全支持继承、重载、派生、多继承,有益于增强源代码的复用性。Python支持重载运算符和动态类型。相对于Lisp这种传统的函数式编程语言,Python对函数式设计只提供了有限的支持。有两个标准库(functools, itertools)提供了Haskell和Standard ML中久经考验的函数式程序设计工具。
虽然Python可能被粗略地分类为"脚本语言"(script language),但实际上一些大规模软件开发计划例如Zope、Mnet及BitTorrent,Google也广泛地使用它。Python的支持者较喜欢称它为一种高级动态编程语言,原因是"脚本语言"泛指仅作简单程序设计任务的语言,如shellscript、VBScript等只能处理简单任务的编程语言,并不能与Python相提并论。
Python本身被设计为可扩充的。并非所有的特性和功能都集成到语言核心。Python提供了丰富的API和工具,以便程序员能够轻松地使用C语言、C++、Cython来编写扩充模块。Python编译器本身也可以被集成到其它需要脚本语言的程序内。
因此,很多人还把Python作为一种"胶水语言"(glue language)使用。使用Python将其他语言编写的程序进行集成和封装。在Google内部的很多项目,例如Google Engine使用C++编写性能要求极高的部分,然后用Python或Java/Go调用相应的模块。
J. 郁闷于Python GUI开发,有没有好的框架
作为Python开发者,你迟早都会用到图形用户界面来开发应用。幸运的是,你有很多选择,python wifi GUI编程网络列举了超过30款跨平台框架,以及Pyjamas这样的,基于谷歌Web Toolkit端口的跨浏览器web开发工具。
那么如何在众多的Python GUI框架中选择呢?近日Dice的技术专家David Bolton为Python开发者推荐了Windows、Mac和Linux上最好的四款Python3开发工具(Gtk、Qt、Tk和wxWidgets)和五款框架(Kivy、PyQt、gui2Py,libavg以及wxPython)。以下是他的推荐理由:
Kivy
基于MIT授权的Kivy是最热门的Python开发框架之一,基于OPenGL ES 2,支持多平台(包括Android/iOS)原生的多点触摸,是一个围绕主循环的事件驱动型框架,因此非常适合游戏开发。Kivy框架在处理从widgets到动画方面非常强大,如果你准备开发跨平台图形应用,或者仅仅需要一个非常强大的跨平台GUI,Kivy都是非常值得关注的。
PyQt
Qt是一个跨平台的多重授权C++框架,如果你开发的是开源项目,你就可以免费使用Qt,否则你需要购买一个商业版本。Qt存在已经很长时间了,曾经属于诺基亚。Qt是一个非常全面的工具和API库,为业界所广泛使用,支持包括移动在内的多个平台,包括GPS导航仪在内的很多设备都使用了Qt。
PyGUI
与Kivy和PyQt相比,PyGUI相对简单,而且只面向Unix、Mac和Windows平台。作为MVC框架,PyGUI的开发理念是能够更好更容易地融入Python生态系统。
PyGUI的一个主要目标就是将Python应用与平台底层的GUI代码撇清,让应用能够始终忠实显示平台的原生GUI,如果你想要快速上手学习Python GUI,那么PyGUI就是你的入门选择。
Libavg
与Kivy类似,libavg也采用了OpenGL并支持硬件加速。作为开源软件,Libavg可以运行在linux、Mac OS X和Windows多个平台,功能加大丰富,例如其框架引擎可以处理数以千计的媒体对象(图片、文本、视频和摄像头输出),支持快速视频输出,并提供一个展示文本的markup系统,此外还支持blur、Chromakery等GPU着色效果。
wxPython
虽然wxPython尚未支持Python3,但资深的wxPython拥有成熟系统的教学资料,绝对值得推荐。xwPython基于wxWidgets,是一个C++写成的跨平台GUI库,支持多种文档格式,并提供文本编辑和字处理widgets。关于wxPython更多的介绍,去看看wiki吧。