计算机的基础
1,计算机由硬件及软件组成。
其中硬件主要包括了cpu,内存以及硬盘。软件则由操作系统以及一系列软件。
操作系统则可以操控硬件,使硬件完成一些需要的操作。
python的历史
- 1989年,为了打发圣诞节假期,Guido开始写Python语言的编译器。Python这个名字,来自Guido所挚爱的电视剧Monty Python’s Flying Circus。他希望这个新的叫做Python的语言,能符合他的理想:创造一种C和shell之间,功能全面,易学易用,可拓展的语言。
- 1991年,第一个Python编译器诞生。它是用C语言实现的,并能够调用C语言的库文件。从一出生,Python已经具有了:类,函数,异常处理,包含表和词典在内的核心数据类型,以及模块为基础的拓展系统。
- Granddaddy of Python web frameworks, Zope 1 was released in 1999
- Python 1.0 - January 1994 增加了 lambda, map, filter and reduce.
- Python 2.0 - October 16, 2000,加入了内存回收机制,构成了现在Python语言框架的基础
- Python 2.4 - November 30, 2004, 同年目前最流行的WEB框架Django 诞生
- Python 2.5 - September 19, 2006
- Python 2.6 - October 1, 2008
- Python 2.7 - July 3, 2010
- In November 2014, it was announced that Python 2.7 would be supported until 2020, and reaffirmed that there would be no 2.8 release as users were expected to move to Python 3.4+ as soon as possible
- Python 3.0 - December 3, 2008
- Python 3.1 - June 27, 2009
- Python 3.2 - February 20, 2011
- Python 3.3 - September 29, 2012
- Python 3.4 - March 16, 2014
- Python 3.5 - September 13, 2015
- Python 3.6 - December 16,2016
python崇尚优美,清晰,简单,是一个优秀并广泛的语言。
python2x和python3x的区别:
python2x:源码混乱,重复代码较多,冗余。
python3x:源码规范,崇尚优美清晰编程语言的
编程语言的大体分类。
解释型:当程序运行时,将代码一行一行的解释成二进制编码,再运行。
优点:排错快,开发效率高,可以跨平台。
缺点:执行效率相对低。
典型语言:python
编译型:一次性的将所有代码编译成二进制编码,再运行程序。
优点:执行效率高。
缺点:排错慢,开发效率低,不可以跨平台。
典型语言:C语言。
python与其他语言之间的转换规则
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的字节码。
小结:
Python的解释器很多,但使用最广泛的还是CPython。如果要和Java或.Net平台交互,最好的办法不是用Jython或IronPython,而是通过网络调用来交互,确保各程序之间的独立性。
运行第一个python程序
1.创建一个*.py文件
2.进入cmd终端
3.python 文件路径 回车
python2x与python3x运行程序的操作区别:
python2x: print('内容') 或者 print '内容'.
python3x: print('内容')
python2x: 默认编码ASCII(解决不能输出中文的方法在首行加上 # -*- encoding:utf-8 -*-)
python3x: utf-8
变量
1,变量必须有数字,字母,下划线任意组合。
2,变量不能以数字开头。
3,变量不能是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']
定义变量的方式:
1.驼峰体:
AgeOfOldboy=56
2.加下划线:
age_of_oldboy=56
常量
常量即指不变的量,例如:π 3.141592653...,或者在程序运行中不会改变的量。
python规定中没有常量,默认全部大写的变量为常量。
例如:BIRTH=19960102
在C语言中有专门的常量定义语法,const int count = 60;一旦定义为常量,更改即会报错。
注释
编程中,注释是其中重要的一部分,因为它不仅可以提示你自己代码的作用,而且可以提示其他人轻易的看懂你所设置的变量。
单行注释: #后面跟注释内容
多行注释: '''注释内容''' 或者 """注释内容"""
字符串之间是可以相加或者相乘:
例如:
n1='老男孩' n2='是一个培训机构' n3=n1+n2 print(n3)
i='好好学习' print(i*8)
基础数据类型
1.int(整型)
在32位机器上,整数的位数是32位,取值范围 -2**31 ~ -2**31-1,即 -2147483648 ~ 2147483647
2.long(长整形)
跟C语言不同,Python的长整数没有指定位宽,即:python没有限制长整数数值的大小,但实际上由于机器内存有限,所以我们使用的长整数数值不可能无限大。
注意: 在python3里不再有long类型了,全是int.
3.str(字符串类型)
在python中,加了引号的字符都被认为是字符串。
4.布尔型(bool)
布尔型很简单,就两个:True(真), False(假) 主要用于逻辑判断。
type()-------> 判断此数据是什么数据类型
程序交互
input 用户交互,输入的全部是字符串类型
python2x : raw_input()
python3x :input()
name=input('请输入你的姓名:') print(name,type(name))
python数据类型之间的转换
数据类型与字符串类型之间的转换:
int--------->str str(12)=='12'
str--------->int int('12')==12
if 循环结构
1.第一种结构
if 条件:
结果
2.第二种结构:
if 条件:
结果
else:
结果
3.第三种结构
choice=input('请输入你猜的数字') if choice == '2': print('今天是周二') elif choice == '4': print('今天是周四') elif choice == '6': print('今天是周六') else: print('选择错误..')
4.第四种结构
if 条件:
if 条件:
结果
else:
结果
else:
结果
while 语句。
while 条件:
结果
跳出循环的条件:
1.改变条件
2.break.
i=1 while True: print(i) i=i+1 if i==101: break
break:结束循环。
continue: 结束本次循环,继续下一次循环。
i=0 while i< 10: i=i+1 if i = 7: continue print(i)