python day 1--python初始

笔者:QQ:   360212316

 

Python初识

Python的创始人为Guido van Rossum。1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做为ABC 语言的一种继承。

python的应用领域

1、云计算: 云计算最火的语言, 典型应用OpenStack

2、WEB开发: 众多优秀的WEB框架,众多大型网站均为Python开发,Youtube, Dropbox, 豆瓣。。。, 典型WEB框架有Django

3、科学运算、人工智能: 典型库NumPy, SciPy, Matplotlib, Enthought librarys,pandas

4、系统运维: 运维人员必备语言

5、金融:量化交易,金融分析,在金融工程领域,Python不但在用,且用的最多,而且重要性逐年提高。原因:作为动态语言的Python,语言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很牛逼,生产效率远远高于c,c++,java,尤其擅长策略回测

6、图形GUI: PyQT, WxPython,TkInter

python的优点

1、优雅、明确、简单

2、开发效率高:python有非常强大的第三方库

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

4、可移植性:Python已经被移植在许多平台上

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

6、可嵌入性:可以把python嵌入c/c++程序,从而向你的程序用户土工脚本

python的缺点

1、运行速度慢:相对于C程序来说

2、代码不能加密

3、线程不能利用多CPU问题

python解释器

cpython:

当我们从Python官方网站下载并安装好Python 3.5后,我们就直接获得了一个官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行python就是启动CPython解释器。

ipython:

Python是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的。好比很多国产浏览器虽然外观不同,但内核其实都是调用了IE。

pypy:

PyPy是另一个Python解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。

绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。如果你的代码要放到PyPy下执行,就需要了解PyPy和CPython的不同点

jython:

Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。

IronPython:

IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。

小结:

小结:python的解释器虽然很多,但使用最广泛的还是Cpython,如果要和java、。net平台交互,最好的办法是通过网络调用,而不是使用jython和IronPython

编译型语言和解释型语言

编译型语言:

  运行编译型语言是相对于解释型语言存在的,编译型语言的首先将源代码编译生成机器语言,再由机器运行机器码二进制)。像C/C++等都是编译型语言

编译型语言有一下几种:

  C语言、C++

编译型语言的优点:

运行速度快,代码效率高,编译后的程序不可修改,保密性较好

编译型语言的缺点:

代码需要经过编译方可运行,可移植性差,只能在兼容的操作系统上运行

解释型语言:

  解释型语言就类似与人类的翻译官似的,你说一句中文,然后翻译官现场翻译,你说一句,翻译一句

  python、java、php、ruby

解释型语言的优点:

可移植性较好,只要有解释环境,可在不同的操作系统上运行

 

解释型语言缺点

  运行需要解释环境,运行起来比编译的要慢,占用资源也要多一些,代码效率低,代码修改后就可运行,不需要编译过程

python程序安装:

    windows安装:

   1、下载安装包

     https://www.python.org/downloads/

  2、安装

        默认安装路径:C:\python27

       3版本安装可以勾选自动配置环境变量,不需要人工配制

   3、配置环境变量

       【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【Python安装目录追加到变值值中,用 ; 分割】

          如:原来的值;C:\python27,切记前面有分号

     linux安装:

       无需安装,原装Python环境

         centos默认安装的2.6.6

         ubuntu默认安装2.6版本和3版本

python的第一个程序

print("Hello World!")

python变量定义:

  • 变量能以数字开头,数字可以在中间
  • 变量首字母不大写
  • 变量不能使用关键字,例如python内置的print、input

python变量定义:

  • 变量能以数字开头,数字可以在中间
  • 变量首字母不大写
  • 变量不能使用关键字,例如python内置的print、input

python中的常量:

  常量的定义方法和变量的定义方法一样,只是变量名全部大写

python的注释:

以井号开头表示注释一行

三个单引号和三个双引号表示注释一段

多行注释双引号 """ print(age_1_oldboy,age_1_oldboy,age_of_oldboy) print(age_1_oldboy,age_1_oldboy,age_of_oldboy) print(age_1_oldboy,age_1_oldboy,age_of_oldboy) print(age_1_oldboy,age_1_oldboy,age_of_oldboy) """ 多行注释单引号 '''
 
print(age_1_oldboy,age_1_oldboy,age_of_oldboy)
 print(age_1_oldboy,age_1_oldboy,age_of_oldboy) 
print(age_1_oldboy,age_1_oldboy,age_of_oldboy) 
print(age_1_oldboy,age_1_oldboy,age_of_oldboy) '
'' 
单行注释: 

#print("hello world") 

多行注释也可以使用这种方法 
#print("hello world")#print("hello world")
#print("hello world")#print("hello world")

python中的流程控制

if判断流程:

if
条件: print() else: print()

例子:

username = input("username") password = input("password") if username == "xiaofeng" and password == "abc123": print("welcome") else: print("worning username or password")

多条件if判断

if
条件: print() elif 条件: print() else: print()

 

例子:

age_of_oldboy = 56

guess_age 
= int(input("guess_age:")) if guess_age == age_of_oldboy: print("you guess it ..") elif guess_age > age_of_oldboy: print("think small...") else: print("think big....")

 

Python格式化输出

name = input("name:") age = input("age:") job = input("job:") hobby = input("hobby:") # print("my name is",name,"I am age",age,"years old,\n",

#       "my job is ",job,"my hobby is",hobby
#
) #方法1: info = """

---------info name %s------
Name:%s
Age :%s
job :%s
hobby:%s
-------------end-----------
"""%(name,name,age,job,hobby) print(info) #方法2: info2 = """

---------info name {_name}------
Name:{_name}
Age :{_age}
job :{_job}
hobby:{_hobby}
-------------end-----------
""".format( _name=name, _age=age, _job=job, _hobby=hobby ) print(info2) #方法3 info3 = """

---------info name {0}------
Name:{0}
Age :{1}
job :{2}
hobby:{3}
-------------end-----------
"""
.format( name,age,job,hobby) print(info3)
posted @ 2016-09-30 15:21  平_常_心  阅读(209)  评论(0编辑  收藏  举报