2016-07-26
 
一、Python简介
 
Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。它的特点如下:
面向对象、解释语言、交互性、模块化、动态性、高级语言、可移植、可用C和C++扩展
Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。
像Perl语言一样, Python 源代码同样遵循 GPL(GNU General Public License)协议
 
二、Python优势劣势
优势:开源免费可用、稳定、良好的支持对象、模块和其他可重用机制
劣势:目前开发人员偏少、缺乏真正的多处理器支持、缺乏商业支持、软件性能效率
 
三、Python解释器
Python是一门跨平台的脚本语言,Python规定了一个Python语法规则,实现了Python语法的解释程序就成为了Python的解释器
CPython(ClassicPython,也就是原始的Python实现,需要区别于其他实现的时候才以CPython称呼;或解作C语言实现的Python)。这是最常用的Python版本。
Jython(原名JPython;Java语言实现的Python,现已正式发布)。Jython可以直接调用Java的各种函数库。
PyPy(使用Python语言写的Python)
IronPython(面向.NET和ECMA CLI的Python实现)。IronPython能够直接调用.net平台的各种函数库。可以将Python程序编译成.net程序。
 
四、Python web 开发框架

-Flask:流行的Web框架

-Django:全能型Web框架

-web.py:一个小巧的Web框架

-Bottle:和Flask类似的Web框架

-Tornado:Facebook的开源异步Web框架
 
五、Python2.x和3.x区别
Python 2.6作为一个过渡版本,基本使用了Python 2.x的语法和库,同时考虑了向Python 3.0的迁移,允许使用部分Python 3.0的语法与函数。
Python 3.0在设计的时候没有考虑向下相容。 除非执行环境无法安装Python 3.0或者程式本身使用了不支援Python 3.0的第三方库。目前不支援Python 3.0的第三方库有Twisted, py2exe, PIL等。 大多数第三方库都正在努力地相容Python 3.0版本。即使无法立即使用Python 3.0,也建议编写相容Python 3.0版本的程式,然后使用Python 2.6, Python 2.7来执行。
Python3.x变化体现在下面几个方面:
Print函数、unicode、除法运算、异常、xrange、不等运算符、去掉了repr表达式、数据类型
 
六、Python第一个小程序
hw.py
#!/usr/bin/env python
#区别于Python2.x,Python3.x的print函数必须加括号
print("Hello,World")
 
七、if判断
if判断
语法:
if expression1:
   statement(s)
   if expression2:
      statement(s)
   elif expression3:
      statement(s)
   else
      statement(s)
elif expression4:
   statement(s)
else:
   statement(s)

举例:

guess.py

#!/usr/bin/env python
number = int(23)
guess = int(input("请任意输入一个整数:"))

if guess == number:
    print ('恭喜,答对了')
    print('游戏结束,再见!^_^')

elif guess < number:
    print('您输入的数字小了!')

else:
    print('您输入的数字大了!')

 
八、for循环
for循环
语法:

>>>for <> in <对象集合>:

... if <条件>:

... break

... if <条件>:

... continue

... <其他语句>

...else:

... <>

...
举例:
a = range(1000)
for i in a
    if  i % 3 ==0:
       print ("可以把3整除")
   elif  i % 3 == 1:
      print ("除3余1")
#else:
#    continue
   
print("这个循环有意思")
 
九、while循环
语法:
while True:
  ....
  if  .... :
    break
  ....
举例:

#!/usr/bin/env python
#
#
count = 0
while True:
    print("count:",count)
    count = count +1
    if count == 1000:
        break
    elif count == 800:
        print("快结束了!")
    else:
        print("加油!")
print("")
print("")
print("辛苦计算!")

 
 
十、补充
a  raw_input被input替代了(py3.x)
b  import getpass  用法: password = getpass.getpass("password:")
c   变量值不加单引号就表示变量。加引号表示值

Python的平凡之路(1)的更多相关文章

  1. Python的平凡之路(8)

    (本文是对平凡之路(7)的补充等) 一.动态导入模块 import importlib __import__('import_lib.metaclass') #这是解释器自己内部用的 #importl ...

  2. Python的平凡之路(20)

    (提问复习为主) 一.Django请求的生命周期      武彦涛:           路由系统 -> 视图函数(获取模板+数据=>渲染) -> 字符串返回给用户     二.路由 ...

  3. Python的平凡之路(19)

    一.Django请求生命周期   对于所有的web框架来说本质就是一个socket服务端,浏览器是socket客户端                                          ...

  4. Python的平凡之路(18)

    一.JS 正则部分 test   - 判断字符串是否符合规定的正则rep = /\d+/;rep.test("asdfoiklfasdf89asdfasdf")# truerep ...

  5. Python的平凡之路(16)

    一.HTML+CSS补充 0.常用页面布局 <!DOCTYPE html> <html lang="en"><head> <meta ch ...

  6. Python的平凡之路(13)

    一.Python的paramiko模块介绍 Python 的paramiko模块,该模块和SSH用于连接远程服务器并执行相关操作 SSH client 用于连接远程服务器并执行基本命令 基于用户名和密 ...

  7. Python的平凡之路(12)

    一.数据库介绍 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,每个数据库都有一个或多个不同的API用于创建,访问,管理,搜索和复制所保存的数据.我们也可以将数据存储在文件中,但 ...

  8. Python的平凡之路(11)

    一. rabbitmq 1 进程Queue:  父进程与子进程进行交互,或者同属于同一父进程下多个子进程进行交互 2 队列通信:   send1.py #!/usr/bin/env python#Au ...

  9. Python的平凡之路(10)

    异步IO 数据库 队列 缓存 1.Gevent协程 定义:用户态的轻量级线程.协程拥有自己的寄存器上下文和栈.协程调度切换时,将寄存器上下文和栈保存到其他地方,在切回来的时候,恢复先前保存的寄存器上下 ...

  10. Python的平凡之路(9)

    一.Paramiko模块练习 1. Paramiko模块介绍 Paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接   2 .SSHclie ...

随机推荐

  1. js倒计时 网上流传最多的

    <!DOCTYPE html><html><head><script src="http://libs.baidu.com/jquery/1.10. ...

  2. 获取AVCaptureSession samplebuffer 一像素的 rgb值

    获取AVCaptureSession samplebuffer 一像素的 rgb值 typedef unsigned char byte; typedef struct RGBPixel{ byte ...

  3. TWaver HTML5 (2D)--基本概念

    基本概念 TWaver HTML5(以下简称TWaver)使用HTML5技术和javascript语言,可在支持HTML5的浏览器上进行绘图. 使用TWaver前,需熟悉几个基本概念:图元(Eleme ...

  4. Laravel多对多简析

    首先生成两张数据表,一般要实现两张数据表之间的联系要建立第三张表,如下 数据表生成之后,生成一些测试数据,接下来就对表article_tag表进行操作 在模型文件中声明两张表之间的关系: 测试数据:

  5. C#基础:泛型委托

    泛型委托是委托的一种特殊形式,感觉看上去比较怪异,其实在使用的时候跟委托差不多,不过泛型委托更具有类型通用性. 就拿C#里最常见的委托EventHandler打比方.在.NET 2.0以前,也就是泛型 ...

  6. this 指向

    this-->当前行为发生的主体就是this,但是this是谁和这个方法在哪执行的或者在哪定义的都没有半毛钱的关系 如何的区分JS中的this? 1)函数执行,看函数名前面是否有".& ...

  7. Flask+mongodb 实现简易个人博客

    最近学习完了<flask-web开发>,实现了一个简易的个人博客网站,由flask+mongodb+bootstrap做成, 这个软件是在阅读<Flask-Web开发>后写的一 ...

  8. iOS开发数据库SQLite的使用

    iOS系统自带Core Data来进行持久化处理,而且Core Data可以使用图形化界面来创建对象,但是Core Data不是关系型数据库,对于Core Data来说比较擅长管理在设备上创建的数据持 ...

  9. cf--------(div1)1A. Theatre Square

    A. Theatre Square time limit per test 2 seconds memory limit per test 64 megabytes input standard in ...

  10. 使用WITH AS提高性能简化嵌套SQL(转载)

    使用WITH AS提高性能简化嵌套SQL http://www.cnblogs.com/fygh/archive/2011/08/31/2160266.html