Day.01 python的基础1

何为编程?

编译程序:是一种程序。它把用高级语言(市场上常见的c,c++,Java,python都称为高级语言)写的源程序作为数据接收,经过翻译转换,产生面向机器的代码作为输出。 这当中代码还可能要由汇编程序或装配程序作进一步加工,得出目标程序,交给计算机执行。 

初识python

python的起源:一个人称"龟叔"的老外在1989年圣诞期间无聊发明的,是一门解释性弱类型编程语言.

python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。  

(龟叔:2005年加入谷歌至2012年,2013年加入Dropbox直到现在,依然掌握着Python发展的核心方向,被称为仁慈的独裁者)。

编译型与解释型。

编译器是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机可以直接以机器语言来运行此程序,速度很快; 

解释器则是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以运行速度是不如编译后的程序运行的快的. 

python的优缺点

优点:优雅,简单,明确

缺点:作为解释性语言相对来说比编译性语言运行速度慢,比如:C,Java...运行速度为0.01s,那么python为0.1s,但是这个速度人类是很难以感觉到的

python的解释器种类

官方提供的为cpython,内部是用c语言实现的.

CPython

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

CPython是使用最广的Python解释器。教程的所有代码也都在CPython下执行。

IPython

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

CPython用>>>作为提示符,而IPython用In [序号]:作为提示符。

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的字节码。

需特别关注的是pypy解释器,它可以一次性把我们的代码解释成计算机认识的字节码文件,可以直接去运行,运行速度更为高效,虽与编译性语言类似,但它还是以解释为主.(动态编译)

第一个python程序
print(任何内容)

print(HelloWord)

注释

单行注释 #注释内容

多行注释'''注释内容'''    """注释内容"""

变量
变量是什么:

程序运行过程中产生的中间值. 暂时保存在内存中. 供后面的程序使用
命名规则:
1. 使用字母, 数字, 下划线组成
2. 不能数字开头, 更不能是纯数字
3. 不能用python的关键字
4. 不要太长
5. 要有意义
6. 区分大小写
7. 不要用中文
8. 建议使用驼峰或者下划线

推荐下划线:更清晰明了

变量的数据类型
1. int. 整数. 可以做+,-,*,/,%(取余,取模),//(整除)
2. str. 字符串. 加了引号的都被认为是字符串,字符串可以 +(相拼接) *(重复)

字符串的拼接只能是双方都是字符串,不能跟数字或其它类型拼接

引号、双引号、多引号有什么区别:单双引号木有任何区别,但你需要考虑单双的配合

print("马云"+"马化腾")

结果:马云马化腾

print("马云"*4)

结果:马云马云马云马云
3. bool. 布尔值. 两个取值. True, False

用户交互
变量 = input(提示语)
接收到的内容提示语是字符串类型
str与int不能作比较,需要转换

转换方法为:字符串 str前加int

比如:str = > int需要写成int(str)
流程控制

if语句
第一种

单分支

if 条件: 

满足条件后要执行的代码

if 条件:
  代码块

第二种

双分支

"""
if 条件:
    满足条件执行代码
else:
    if条件不满足就走这段
"""
AgeOfOldboy = 48

if AgeOfOldboy > 50 :
    print("Too old, time to retire..")
else:
    print("还能折腾几年!")

if 条件1:
  代码块1
else:
  代码块儿2

第三种

多分支

回到流程控制上来,if...else ...可以有多个分支条件

if 条件:
    满足条件执行代码
elif 条件:
    上面的条件不满足就走这个
elif 条件:
    上面的条件不满足就走这个
elif 条件:
    上面的条件不满足就走这个    
else:
    上面所有的条件不满足就走这段

if 条件1:
  代码块
elif 条件2:
  代码块
elif....
else:


第四种

嵌套式,不建议超过四个,原因:太乱

if 条件:
  if 条件:
    if 条件:
    代码块
  else:
else:

 需要注意的是,python代码是从上到下依次判断,只要满足一个,就不会再往下走了

 

猜你喜欢

转载自www.cnblogs.com/--kai/p/9373720.html
今日推荐