Python开发day01,,Python简介为什


Python简介

为什么选择Python而不选择其他语言?

我们知道流行和常用的语言有C、Java、Python,在其中几个做出选择,选择一个语言进行学习。C语言与Python的对比:在使用上:Python的类库非常多,如果用C和Python来实现一个功能,Python可能只需要几行就可以,但是C可能就需要几十行甚至上百行。在执行速度上:在速度上没的说,C语言的执行速度比Python快得多。Java语言与Python的对比:在使用上:Python在Linux、Mac OS系统上原装带有Python,这是其他语言没有的。这两种语言都是有非常丰富的类库支持。在执行速度上:Python比Java的速度可能慢上一些。

  总结:Python在执行速度上比较慢,但是他的代码可读性高(代码简单明了),拥有非常丰富的类库。在中国有一种习惯叫做先入为主的概念,所以当Python发展到中国的时候已经有了其他语言来做这件事情,改变可能带来不可预知的后果所以Python的发展在中国还是比较缓慢的,但是在国外已经很火了。

  

Python的种类有那些?

CPython   #现在使用最为广泛,默认安装的也是CPython,它的执行过程是源文件(.py文件)转换成字节码文件(.pyc文件),然后在Python虚拟机上运行。Jython   #使用Java语言来实现,执行过程是源文件(.py文件),Jython动态编译源文件(.py文件)编译成JAVA字节码,在后再JVM虚拟机上运行。PyPy# Python实现的Python解释器,将Python的字节码再编译成机器码。PyPy还提供了JIT编译器和沙盒功能,因此运行速度比CPython要快,以及可以    安全的运行 一些不被信任的代码。PyPy还有一个单独的支持微线程的版本。IronPython#Python的代码使用C#来实现,IronPython将Python代码编译成C#字节码,然后在CLR上运行。(与Jython类似,作者也为同一人。)Brython、RubyPython...等等

Python类型虚拟机  兼容的语言
CPython   CPythonVMC
JythonJVMJAVA
IronPythonCLRC#
Brythonjavascriptengine(e.g,V8)JavaScript
RubyPython  Ruby VMRuby

  总结:现在使用最为广泛的是CPython,因为官方默认给出的Python就是CPython,从上述中可以看出每一种类型的Python都会有不同的方式去实现,但是他们的代码规则是一样的。现在运行最快的为PyPy

Python环境的安装及配置

安装Python

windows:

 1 1、下载安装包 2  3     https://www.python.org/downloads/ 4  5 2、安装 6  7     默认安装路径:C:\python27 8  9 3、配置环境变量10 11     [右键计算机]--[属性]--[高级系统设置]--[高级]--[环境变量]--[在其中找到变量名为Path的一行,双击]--[Python的安装目录追加到变值中,使用;号分割]12 13     如:原来的值;C:\python27,切记前面有分号

linux:

1  Linux不需要安装,Linux原装带有Python环境。 提示:如果Python版本是2.6,请更新至2.7,查看Python版本python -V 

更新Python

windows:

1 卸载后重新安装便可,可同时安装2.*和3.*版本。

linux:

Linux的yum依赖自带Python,为防止错误,此处更新其实就是再安装一个Python

 1 1、安装gcc,用于编译Python源码 2  3     yum install gcc 4  5 2、下载源码包,https://www.python.org/ftp/python/ 6  7 3、解压并进入源码文件 8  9 4、编译安装10 11     ./configure12 13     make all14 15     make install16 17 5、查看版本18 19     /usr/local/bin/python2.7 -V20 21 6、修改默认Python版本22 23     mv /usr/bin/python /usr/bin/python2.624 25     ln -s /usr/local/bin/python2.7 /usr/bin/python26 27 7、防止yum执行异常,修改yum使用的Python版本28 29     vi /usr/bin/yum30 31     将头部 #!/usr/bin/python 修改为 #!/usr/bin/python2.6

Python入门

第一个Python代码

在任何一个目录下创建一个以.py结尾的文件,因为默认Python文件以.py结尾,可以写成其他的但是不建议(假设我们的文件在/usr/local/hello.py)。在创建的文件中输入代码print(‘hello word‘)执行此代码输入python /usr/local/hello.py便可以执行其中的代码。

定义解释器

每次在写脚本时第一行定义脚本使用什么语言经行执行:#!/usr/bin/pytho或者#!/usr/bin/env python,在Windows上无作用在定义好#!/usr/bin/pytho之后我们需要给脚本可执行权限chomd 755脚本名,便可以./脚本名来执行脚本
#!/usr/bin/pythoprint(‘hello work‘)

定义内容编码

在脚本的第二行输入编码格式:# -*-coding:utf-8-*-。utf-8为字符编码格式,如果我们可能会输出中文或输入中文可以使用,同时也可以使用unicode编码,但是推荐使用utf-8节省空间,因为2.*版本的Python他默认使用的是ascii编码。如果是3.5的话就不需要了,3.5默认使用的是utf-8编码如果你的python是2.*的,代码这样写一定会报错:
1 #!/usr/bin/env python2 print(‘你好,世界‘)

因为2.*的Python默认为ascii编码无法表示中文。

改成后的样子:
1 #!/usr/bin/env python2 #-*-coding:utf-8-*-3 print(‘你好,世界‘)

因为你的#-*-coding:utf-8-*-告诉了Python我的代码使用utf-8的编码来执行。

注释

注释的意思就是这里的内容不进行存入内存,让代码的可读性变高。注释单行为#被注是的内容注释多行为"""被注释的内容"""

执行脚本传入参数

创建两个文件例如a.py和b.py在a.py中写入print ‘hello A‘,在b.py中写入
1 import a2 print(‘hello B‘)

那么执行后显示的结果是

1 hello A2 hello B

pyc文件

在执行Python代码的时候如果导入了其他的.py文件,那么在执行过程中会自动生成一个与代码文件同名的.py文件,这个文件就是Python解释器编译之后产生的字节码。提示:代码经过编译可以产生字节码,字节码通过反编译也可以得到代码。当代码丢失时只要字节码还在同样可以运行。

变量

我们首先声明变量name = ‘Wuyongqi‘

从上述中可以看出name为变量名,‘Wuyongqi‘为值。变量的作用可以理解为简称、昵称他代指内存里某一个地址中的内容。

      技术分享

变量定义的规则:变量名称只能以数字、字母、下划线来组合命名,但是数字不可以开头。因为Python也有一写关键字,这些关键字不可以声明为变量[‘and‘, ‘as‘, ‘assert‘, ‘break‘, ‘class‘, ‘continue‘, ‘def‘, ‘del‘, ‘elif‘, ‘else‘, ‘except‘, ‘exec‘, ‘finally‘, ‘for‘, ‘from‘, ‘global‘, ‘if‘, ‘import‘, ‘in‘, ‘is‘, ‘lambda‘, ‘not‘, ‘or‘, ‘pass‘, ‘print‘, ‘raise‘, ‘return‘, ‘try‘, ‘while‘, ‘with‘, ‘yield‘]

给变量赋值

这样就相当于在内存中开辟出两块空间一块空间叫Hello work,一块叫Wuyongqi。
1 #!/usr/bin/env python2 # -*- coding: utf-8 -*-3 4 name1 = "Hello Word"5 name2 = "Wuyongqi"
这样就想是内存中开辟一块空间然后叫Wuyongqi,使用name1来代指Wuyongqi这个内存空间地址,name2等于name1所以不需要在开辟一块空间name2与name1同使用一块内存空间。
1 #!/usr/bin/env python2 # -*- coding: utf-8 -*-3 4 name1 = "Wuyongqi"5 name2 = name1

输入

输入
1 #!/usr/bin/python2 # -*- coding: utf-8 -*-3 name = raw_input("请输入用户名:")4 # 将用户输入的内容赋值给 name 这个变量5 print name6 #打印用户输入的内容

当输入密码的时候防止被他人看到可以设置为不可见密码,使用getpass模块中的getpass方法便可以。
1 #!/usr/bin/python2 # -*- coding: utf-8 -*-3 import getpass4 pwd = getpass.getpass("请输入密码:")5 #当用户输入完成后,将用户输入的值赋给pwd6 print pwd7 #打印出用户输入的密码

流程控制和缩进

在这里我们使用if判断来做流程控制,python中有严格缩进要求,因为他没有结束符首先完成一个用户登录账号、密码的例子:
 1 #!/usr/bin/python 2 # -*- coding: utf-8 -*- 3 import getpass 4  5 username = raw_input(‘请输入用户名:‘) #提示用户输入用户名,并讲用户输入的用户名赋给username变量。 6  7 password = getpass.getpass(‘请输入密码:‘)#提示用户输入密码,并讲用户输入的密码赋给pwd变量,这里我们使用了getpass模块的getpass方法所以用户输入的内容是看不到的。 8  9 if username == "Wuyongqi" and pwd == "wyq":10     print(‘恭喜您,登陆成功...‘)11 12 else:13     print(‘您输入的账号或密码错误,请从新输入....‘)

while循环

基本循环
1 while 条件:#当条件满足的情况下执行下面代码2     3     代码........
break命令的解释break可以终止当前循环。
1 while True:#条件一直满足,请不要那这个值随意尝试,将会导致一个死循环。2     print(‘hello‘) #打印hello3     break  #终止当前循环。    这样的代码也就是打印一次hello之后便退出了。

continue命令的解释

continue用于退出当前循环,进行下一次循环。
1 a=1#定义一个变量数字为1。2 while True: #循环体条件一直满足。3     if a == 12 : #判断当前的变量a是不是等于12,如果等于12执行下面的代码,如果不等于则继续向下判断。4         continue #当if判断a等于12的时候将不打印12,因为在这里我们使用了continue跳出了本次循环。5     elif a == 50 : #判断当前的变量a是不是等于50,如果等于50执行下面的代码,如果不等于50则继续向下判断。6         break #if判断a等于50终止当前循环退出。7     else:  #如果上层判断都没有符合的则执行这一步。8         print(a)  #打印变量a当前的值。

Python开发day01

相关内容

    暂无相关文章

评论关闭