python模块中使用了hadoop框架

Python014

python模块中使用了hadoop框架,第1张

1、什么是python?

2、python的10大Web框架有哪些,以及它们各自的特点?

3、本文只是这10大框架做了简单介绍,让你对它们有个初步的了解。

Python 是一门动态、面向对象语言。其最初就是作为一门面向对象语言设计的,并且在后期又加入了一些更高级的特性。除了语言本身的设计目的之外,Python标准 库也是值得大家称赞的,Python甚至还自带服务器。其它方面,Python拥有足够多的免费数据函数库、免费的Web网页模板系统、还有与Web服务 器进行交互的库、这些都可以设计到你的Web应用程序里面。在这篇文章里,我们将为Python Web开发者介绍基于Python的10大Web应用框架。

1、CubicWeb

1.jpg (101.51 KB, 下载次数: 2)

2015-7-16 11:04 上传

CubicWeb的最重要的支柱就是代码的可重用性。CubicWeb宣扬自己不仅是一个Web开发框架,而且还是一款语义Web开发框架。CubicWeb使用关系查询语言(RQL Relation Query Language)与数据库之间进行通信。

2、Zope2

2.jpg (53.86 KB, 下载次数: 1)

2015-7-16 11:04 上传

Zope 2是一款基于Python的Web应用框架,是所有Python Web应用程序、工具的鼻祖,是Python家族一个强有力的分支。Zope 2的“对象发布”系统非常适合面向对象开发方法,并且可以减轻开发者的学习曲线,还可以帮助你发现应用程序里一些不好的功能。

3、Web2py

3.jpg (99.94 KB, 下载次数: 1)

2015-7-16 11:04 上传

Web2py是一个用Python语言编写的免费的开源Web框架,旨在敏捷快速的开发Web应用,具有快速、可扩展、安全以及可移植的数据库驱动的应用,遵循LGPLv3开源协议。

Web2py提供一站式的解决方案,整个开发过程都可以在浏览器上进行,提供了Web版的在线开发,HTML模版编写,静态文件的上传,数据库的编写的功能。其它的还有日志功能,以及一个自动化的admin接口。

4、TurboGears

4.jpg (95.37 KB, 下载次数: 1)

2015-7-16 11:04 上传

它是另外一个基于 Python 的 MVC 风格的 Web 应用程序框架。

TurboGears 开发人员称这个项目是一个 “大框架(megaframework)”,这是因为它是由现有的子项目构成的。TurboGears 可以帮助将很多主要组件集成在一起:MochiKit:JavaScript 库

Kid:模板语言

CherryPy:基本 Web 框架

SQLObject:对象关系映射器(ORM)

5、Pylons

5.jpg (131.51 KB, 下载次数: 1)

2015-7-16 11:04 上传

Pylons是一个开放源代码的Web应用框架,使用python语言编写。它对WSGI标准进行了扩展应用,提升了重用性且将功能分割到独立的模块中。

Pylons是最新的Web应用框架中的典型,类似于Django和TurboGears。Pylons受Ruby on Rails影响很深:它的两个组件,Routes和WebHelpers是Rails特性的Python实现。

6、Grok

6.jpg (79.28 KB, 下载次数: 0)

2015-7-16 11:04 上传

Grok 是一个为 Python 开发者提供的Web应用开发框架,Grok 的重点是敏捷开发,是一个易用而且功能强大的开发框架,基于 Zope 3 技术。

7、Web.py

7.jpg (69.53 KB, 下载次数: 2)

2015-7-16 11:10 上传

Web.py是一个轻量级的开源Python Web框架,小巧灵活、简单并且非常强大,在使用时没有任何限制。目前Web.py被广泛运用在许多大型网站,如西班牙的社交网站Frinki、主页日平均访问量达7000万次的Yandex等。

8、Pyramid

8.jpg (98 KB, 下载次数: 2)

2015-7-16 11:10 上传

Pyramid也是一款轻量级的开源Python Web框架,是Pylons项目的一部分。Pyramid只能运行在Python 2.x或2.4以后的版本上。在使用后端数据库时无需声明,在开发时也不会强制使用一些特定的模板系统。

9、CherryPy

9.jpg (83.16 KB, 下载次数: 2)

2015-7-16 11:11 上传

CherryPy是一个基于Python的Web使用程序开发框架,它极大地简化了运用 Python 的web开发人员的工作。它为Python开发人员提供了友好的HTTP协议接口。大家知道,HTTP可是万维网的支柱协议,而CherryPy将HTTP协议简化成Python API来供Python 开发人员使用,这极大地简化了Web开发人员对HTTP协议的操作。CherryPy自身内置了一个HTTP服务器,或者称为Web服务器。这样,对于CherryPy的用户来说,不用另外搭设Web服务器就能直接运行 CherryPy应用程序了。实际上,Web服务器是到达CherryPy应用程序的关口,是所有的HTTP请求和响应的必经之地。因此,可以这样理解 CherryPy内建的Web服务器:它是位于处理客户端与服务器端之间的一层软件,用于把底层TCP套按字传输的信息转换成Http请求,并传递给相应 的处理程序同时,还把上层软件传来的信息打包成Http响应,并向下传递给底层的TCP套按字。

10、Flask

10.jpg (52.97 KB, 下载次数: 2)

2015-7-16 11:10 上传

Flask是一个轻量级的Web应用框架, 使用Python编写。基于 WerkzeugWSGI工具箱和 Jinja2模板引擎。使用 BSD 授权。

Flask也被称为 “microframework” ,因为它使用简单的核心,用 extension 增加其他功能。Flask没有默认使用的数据库、窗体验证工具。然而,Flask保留了扩增的弹性,可以用Flask-extension加入这些功 能:ORM、窗体验证工具、文件上传、各种开放式身份验证技术

首先,my_dog = Dog()这个实例化方法肯定有问题,your_dog = Dog("hehe",6)这个是正确的,那么为何实际运行结果是相反的呢?

看这里,这是我修改后的代码:

class Dog():

    def __init__(self,name_of_dog,age_of_dog):

        self.name = name_of_dog

        self.age = age_of_dog

    def setname(self,name):

        self.name = name

    def setage(self,age):

        self.age = age

my_dog = Dog("haha",5)

my_dog.setname("haha")

my_dog.setage(5)

print("My dog's name is",my_dog.name)

print("It's",my_dog.age,"years old.")

your_dog = Dog()

运行结果:

这个才是正确的报错。

你的错误在于:

def _init_(self,name_of_dog,age_of_dog):

应该是:

def __init__(self,name_of_dog,age_of_dog):

希望可以帮到你。

1. - 运行速度慢,因为Python是解释型语言,是一种高级语言,代码会在执行的时候,一行一行的使用解释器翻译成底层代码,翻译成机器码,而这个过程非常耗时,所以他运行过程中,比很多语言的代码都慢了很多。

- 线程不能利用多CPU,这是Python最大的确定,GIL即全局解释器锁(Global Interpreter Lock),是计算机程序设计语言解释器用于同步线程的工具,使得任何时刻仅有一个线程在执行,Python的线程是操作系统的原生线程。在Linux上为pthread,在Windows上为Win thread,完全由操作系统调度线程的执行。一个python解释器进程内有一条主线程,以及多条用户程序的执行线程。即使在多核CPU平台上,由于GIL的存在,所以禁止多线程的并行执行。

Python的优缺点可以看看传智播客的社区,里面很多技术老师写的相关文章。并且有学习线路图适合小白学习,每个板块下面都有配套视频。