合肥刘磬纤,明成皇后演员表,钒电池概念股
python可以应用于众多领域,如:数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。目前业内几乎所有大中型互联网企业都在使用python,如:youtube、dropbox、bt、quora(中国知乎)、豆瓣、知乎、google、yahoo!、facebook、nasa、百度、腾讯、汽车之家、美团等。
目前python主要应用领域
python在一些公司的应用
python发展史
python是什么编程语言
编程语言主要从以下几个角度为进行分类,编译型和解释型、静态语言和动态语言、强类型定义语言和弱类型定义语言,每个分类代表什么意思呢,我们一起来看一下。
编译型与解释型
编译器是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机可以直接以机器语言来运行此程序,速度很快;
而 解释器 则是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以运行速度是不如编译后的程序运行的快的.
这是因为计算机不能直接认识并执行我们写的语句,它只能认识机器语言(是二进制的形式)
编译型
优点:编译器一般会有预编译的过程对代码进行优化。因为编译只做一次,运行时不需要编译,所以编译型语言的程序执行效率高。可以脱离语言环境独立运行。
缺点:编译之后如果需要修改就需要整个模块重新编译。编译的时候根据对应的运行环境生成机器码,不同的操作系统之间移植就会有问题,需要根据运行的操作系统环境编译不同的可执行文件。
解释型
优点:有良好的平台兼容性,在任何环境中都可以运行,前提是安装了解释器(虚拟机)。灵活,修改代码的时候直接修改就可以,可以快速部署,不用停机维护。
缺点:每次运行的时候都要解释一遍,性能上不如编译型语言。
动态语言和静态语言
通常我们所说的动态语言、静态语言是指动态类型语言和静态类型语言。
(1)动态类型语言:动态类型语言是指在运行期间才去做数据类型检查的语言,也就是说,在用动态类型的语言编程时,永远也不用给任何变量指定数据类型,该语言会在你第一次赋值给变量时,
在内部将数据类型记录下来。python和ruby就是一种典型的动态类型语言,其他的各种脚本语言如vbscript也多少属于动态类型语言。
(2)静态类型语言:静态类型语言与动态类型语言刚好相反,它的数据类型是在编译其间检查的,也就是说在写程序时要声明所有变量的数据类型,c/c++是静态类型语言的典型代表,
其他的静态类型语言还有c#、java等。
强类型定义语言和弱类型定义语言
(1)强类型定义语言:强制数据类型定义的语言。也就是说,一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了。
举个例子:如果你定义了一个整型变量a,那么程序根本不可能将a当作字符串类型处理。强类型定义语言是类型安全的语言。
(2)弱类型定义语言:数据类型可以被忽略的语言。它与强类型定义语言相反, 一个变量可以赋不同数据类型的值。
强类型定义语言在速度上可能略逊色于弱类型定义语言,但是强类型定义语言带来的严谨性能够有效的避免许多错误。另外,“这门语言是不是动态语言”与“这门语言是否类型安全”之间是完全没有联系的!
例如:python是动态语言,是强类型定义语言(类型安全的语言); vbscript是动态语言,是弱类型定义语言(类型不安全的语言); java是静态语言,是强类型定义语言(类型安全的语言)。
通过上面这些介绍,我们可以得出, python是一门动态解释性的弱类型定义语言。
python的优缺点
先看优点
再看缺点
当我们编写python代码时,我们得到的是一个包含python代码的以 .py 为扩展名的文本文件。要运行代码,就需要python解释器去执行 .py 文件。
由于整个python语言从规范到解释器都是开源的,所以理论上,只要水平够高,任何人都可以编写python解释器来执行python代码(当然难度很大)。事实上,确实存在多种python解释器。
python的种类
python的官方版本,使用c语言实现,使用最为广泛,cpython实现会将源文件(py文件)转换成字节码文件(pyc文件),然后运行在python虚拟机上。
python的java实现,jython会将python代码动态编译成java字节码,然后在jvm上运行。
python的c#实现,ironpython将python代码编译成c#字节码,然后在clr上运行。(与jython类似)
python实现的python,将python的字节码字节码再编译成机器码。
python 的环境
windows:
下载地址:https://www.python.org/downloads/
首先区分你当前的操作系统,然后选择相对应的内容进行点击,我当前操作系统是windows我选择的是普通电脑系统.下一步如下图:
然后选择和你电脑相对应的点击,然后就自动下载了
安装详解
linux:
自带python环境
[meet@r usr]$ python37 -v
python 3.7.0
[meet@r usr]$ python3 -v
python 3.4.9
[meet@r usr]$ python2 -v
python 2.7.5
更新python环境
1、安装gcc,用于编译python源码
yum install gcc
2、下载源码包,https://www.python.org/ftp/python/
3、解压并进入源码文件
4、编译安装
./configure
make all
make install
5、查看版本
/usr/local/bin/python2.7 -v
6、修改默认python版本
mv /usr/bin/python /usr/bin/python2.6
ln -s /usr/local/bin/python2.7 /usr/bin/python
7、防止yum执行异常,修改yum使用的python版本
vi /usr/bin/yum
将头部 #!/usr/bin/python 修改为 #!/usr/bin/python2.6
python 入门
一、'hello world!'
python2写法:
print 'hello world'
python3写法:
print('hello world')
二、执行(解释器)
明确的指出 hello.py 脚本由 python 解释器来执行。
[meet@r usr]$ cat hello.py
#!/usr/bin/env python
print("hello world!")
[meet@r usr]$ sudo chmod +x hello.py
[meet@r usr]$./hello.py
hello world!
执行python代码时,如果导入了其他的 .py 文件,那么,执行过程中会自动生成一个与其同名的 .pyc 文件,该文件就是python解释器编译之后产生的字节码。
[meet@r usr]$ ls a.py*
a.py a.pyc
[meet@r usr]$
三、变量
1、声明变量
name = 'meet'
# 这样的形式就是在定义一个变量
name 是一个变量名
= 是一个赋值操作
'meet' 是一个值
变量的作用:昵称其代指内存里某个地址中保存的内容
变量定义的规则:
2、变量的赋值
name1 = 'meet'
name2 = 'guo'
name1 = 'meet'
name2 = name1
变量的小高级
常量:
常量就是将变量名大写,尽量保持不更改的一种量
四、注释
单行注释:#meet
多行注释:'''meet'''
单行注释(当行注释)
# meet
多行注释
'''
m
e
e
t
'''
五、基础数据类型(int,str,bool)
int是整型;也就是我们从小就接触的数学中的整数,整型在计算机中运于计算和比较
定义一个int类型
num1 = 2
num2 = 3
print(num1 + num2)
结果: 5
# 整型就和我们学的数学一样可以进行加减乘除
str是字符串;也就是我们从小就接触的中文,如果我们在程序中直接把中文写入,程序是不能分辨这是个什么鬼东西.所以我们要遵循一种规则
让计算机能够识别,这个规则就是只要是用引号引起来就是字符串
定义一个str类型
s1 = '我是中文'
s2 = '我是英文'
print(s1 + s2)
结果: 我是中文我是英文
# 字符串相加就实现一个拼接的效果,字符串只能和字符串相加
# 字符串也可以做乘法,但是乘法的时候只能和数字相乘
bool是布尔值;其实这个东西也是我们很小就接触的东西,俗话说人要<是非分明>.其实这个bool值就是我们所说的是非,布尔值中一共分为俩个状态
true 就对应我们话中的是,白话来说就是真
false 就对应我们话中的非,白话来说就是假
例如我们想让计算机帮我们做一下俩个的大小比较
print(3>7)
结果: false
print(7>3)
结果: true
六、程序交互(用户交互)
输入用户名
#!/usr/bin/env python
#-*- coding:utf-8 -*-
#将用户输入的内容赋值给name变量
name = raw_input("请输入用户名:")
print name
#python3的写法
name = input("请输入用户名:")
print(name)
输入密码时,如果想要不可见,需要利用getpass 模块中的 getpass方法,即:
#!/usr/bin/env python
#-*- coding:utf-8 -*-
import getpass
pwd = getpass.getpass("请输入密码:")
print(pwd)
需要注意的是input程序交互获取到的内容是字符串,我们看下面的简单示例:
num = input('请输入数字:')
print(num + 5)
结果:
请输入数字:6
traceback (most recent call last):
file "d:/python_object/test.py", line 350, in <module>
print(num + 5)
typeerror: must be str, not int
# 报错了,提示我们类型错误,数字和字符串是不能相加的.可是我们输入的明明是数字啊.其实我们看着输入的是
# 数字但是input获取到的都是字符串
七、流程控制与缩进
二选一游戏(两者活一者)
num = input('请输入要比较的数字:')
if int(num) > 5:
print('您输入的数字大于5')
else:
print('您输入的数字小于5')
以上这种写法是让用户输入内容,然后进行比较,如果一个条件成立那就执行print,然后程序就退出了.下边的else就不会在执行了
多个选项进行单选(选择题)
num = input('请输入要比较的数字:')
if int(num) > 5:
print('您输入的数字大于5')
elif int(num) == 5:
print('请输入的数字就是5')
elif int(num) < 5:
print('您输入的数字小于5')
以上写法就是我们做的单选题一样,三个分支判断中只要有个成立,其余都不在执行
嵌套if
name = input('请输入名字:')
if name == 'meet':
age = input('请输入年龄:')
if int(age) == 18:
print('输入全部正确')
else:
print('年龄输入错误!')
else:
print('名字输入错误!')
这样写法很常用,这样我们就可以明确的知道用户输入的名字和年龄那个是错误的,并且还做一个判断如果名字正确后在进行判断密码
八、while循环
1、基本循环
while 条件:
# 循环体
# 如果条件为真,那么循环则执行
# 如果条件为假,那么循环不执行
2、break
break 用于退出当层循环
#!/usr/bin/env python
#-*- coding:utf-8 -*-
num = 1
while num <6:
print(num)
num+=1
break
print("end")
3、continue
continue 用于退出当前循环,继续下一次循环
#!/usr/bin/env python
#-*- coding:utf-8 -*-
num = 1
while num <6:
print(num)
num+=1
continue
print("end")
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
新手学习Python2和Python3中print不同的用法
Python基于os.environ从windows获取环境变量
网友评论