笔者: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)

python day 1--python初始的更多相关文章

  1. python ctypes 探究 ---- python 与 c 的交互

    近几天使用 python 与 c/c++ 程序交互,网上有推荐swig但效果都不理想,所以琢磨琢磨了 python 的 ctypes 模块.同时,虽然网上有这方面的内容,但是感觉还是没说清楚.这里记录 ...

  2. [转]python ctypes 探究 ---- python 与 c 的交互

    近几天使用 python 与 c/c++ 程序交互,网上有推荐swig但效果都不理想,所以琢磨琢磨了 python 的 ctypes 模块.同时,虽然网上有这方面的内容,但是感觉还是没说清楚.这里记录 ...

  3. Python之路Python作用域、匿名函数、函数式编程、map函数、filter函数、reduce函数

    Python之路Python作用域.匿名函数.函数式编程.map函数.filter函数.reduce函数 一.作用域 return 可以返回任意值例子 def test1(): print(" ...

  4. [ Python入门教程 ] Python字典数据类型及基本操作

    字典是Python中重要的数据类型,字典是由"键-值"对组成的集合,"键-值"对之间用逗号隔开,包含在一对花括号中.字典中的"值"通过&qu ...

  5. python for循环 - python基础入门(11)

    在python开发中,除了前篇文章介绍的while循环还有一个for循环也经常使用,两者使用都是大同小异,for循环的使用相对于while循环更加灵活,下面我们一起来了解下具体区别. 一.for 循环 ...

  6. 【Python开发】python集成开发环境IDE搭建

    http://blog.csdn.net/pipisorry/article/details/39854707 使用的系统及软件 Ubuntu / windows Python 2.7 / pytho ...

  7. Python for循环 - Python零基础入门教程

    目录 一.for 循环语法 二.for 循环实战 三.重点总结 四.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门 在 Python ...

  8. Python学习笔记—Python基础1 介绍、发展史、安装、基本语法

    第一周学习笔记: 一.Python介绍      1.Python的创始人为吉多·范罗苏姆.1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言 ...

  9. 【Python大系】Python快速教程

    感谢原作者:Vamei 出处:http://www.cnblogs.com/vamei 怎么能快速地掌握Python?这是和朋友闲聊时谈起的问题. Python包含的内容很多,加上各种标准库.拓展库, ...

  10. python学习笔记-python程序运行

    小白初学python,写下自己的一些想法.大神请忽略. 安装python编辑器,并配置环境(见http://www.cnblogs.com/lynn-li/p/5885001.html中 python ...

随机推荐

  1. 协程、异步IO

    协程,又称微线程,纤程.英文名Coroutine,协程是一种用户态的轻量级线程. 协程拥有自己的寄存器上下文和栈.协程调度切换时,将寄存器上下文和栈保存到其他地方,在切回来的时候,恢复先前保存的寄存器 ...

  2. Java BigDecimal和double

    BigDecimal类 对于不需要任何准确计算精度的数字可以直接使用float或double,但是如果需要精确计算的结果,则必须使用BigDecimal类,而且使用BigDecimal类也可以进行大数 ...

  3. 使用sql语句创建修改SQL Server标识列(即自动增长列)

    一.标识列的定义以及特点SQL Server中的标识列又称标识符列,习惯上又叫自增列.该种列具有以下三种特点:1.列的数据类型为不带小数的数值类型2.在进行插入(Insert)操作时,该列的值是由系统 ...

  4. 【转载】Keil中的USE MicroLib说明

    在keil建立ARM的工程时 其中有一项是选 use MicroLIB 由于对KEIL不是很熟悉,于是就查了查,得到了以下信息: microlib 是缺省 C 库的备选库. 它旨在与需要装入到极少量内 ...

  5. 关于import caffe出错的解决

    [http://blog.csdn.net/wuzuyu365/article/details/52431062]关于在caffe下,import caffe报错的解决:conda install p ...

  6. [转]细说Redis监控和告警

    原文  https://zhuoroger.github.io/2016/08/20/redis-monitor-and-alarm/? 对于任何应用服务和组件,都需要一套完善可靠谱监控方案. 尤其r ...

  7. Tomcat Connector三种运行模式(BIO, NIO, APR)的比较和优化

    Tomcat Connector的三种不同的运行模式性能相差很大,有人测试过的结果如下: 这三种模式的不同之处如下: BIO: 一个线程处理一个请求.缺点:并发量高时,线程数较多,浪费资源. Tomc ...

  8. SpringMVC中利用@InitBinder来对页面数据进行解析绑定

    同步发布:http://www.yuanrengu.com/index.php/springmvc-user-initbinder.html 在使用SpingMVC框架的项目中,经常会遇到页面某些数据 ...

  9. IE6 跟随滚动解决方法

    position:fixed;_position:absolute; left:0px; top:350px;_top:expression(documentElement.scrollTop +do ...

  10. git usage:常用git命令

    最近在改TV media相关的测试用例,需要在git上维护相关的脚本,把常用命令总结如下,方便以后使用. 1. 从已有git服务器上clone到本地, 首先进入用户根目录: cd ~ 然后进行clon ...