1.认识程序
1.1 程序
程序是指根据语言提供的指令按照一定逻辑顺序对获得的数据进行运算,并最终返回给我们的指令和数据的组合。
程序是用语言写成的。语言分高级语言和低级语言。
低级语言有时叫机器语言或汇编语言。
高级语言翻译成机器代码有两种方法,即解释和编译。
解释型语言是边读源程序边执行。高级语言是源代码。
编译型语言是将源代码完整地编译成目标代码后才能执行,以后在执行时不需要再编译。
1.2 调试
程序错误被称为bug,查找bug的过程称为调试(debugging)。
1.3 语法错误
语法指的是程序的结构和此结构的规则。比如('hello,worldbank'),括号中的单引号是成对的,执行时才能正确执行。
如果输入('hello,world!)或(hello,world')就会报错,这属于语法错误。
1.4 运行错误
鉴于现在计算机软硬件的理论水平、工业制造水平、使用者的水平等一些内在的、外在的因素,出现错误并不稀奇,且程序越复杂,出现异常的概率越大。
异常的种类很多,如内存用尽、除数为零的除法等都可能导致异常。python为了把错误的影响降至最低,提供了专门的异常处理语句。
运行时错误一般在代码量偏多时才容易遇到。
1.5 语义错误
称序即使有语义错误,也能正常运行,不会产生任何错误信息,但得到的结果和我们预料的不一致。
发生这种错误一般是我们对语句的运行机制了解得不够透彻,自以为它应该如此运行,实际却不是这样。
还有可能是你解决问题的思路本身就是错的,写的程序当然是错的。
2.数据类型
2.1 整型
int 通常被称为整型或整数,是正、负整数,不带小数点。
2.2 浮点型
浮点型 由整数部分与小数部分组成,也可以使用科学计数法表示。
2.3 复数
复数由实数部分和虚数部分构成,可以用a+bj或complex(a,b)表示,复数的实部a和虚部b都是浮点型。
2.4 数据类型转换
int(x)将x转换为一个整数
float(x)将x转换为一个浮点数
complex(x)将x转换为一个复数,实数部分为x,虚数部分为0.
complex(x,y)将x和y转换为一个复数。实数部分为x,虚数部分为y。x和y是数字表达式。
2.5 常量
所谓常量就是不能变的变量,比如常用的数字常数π就是一个常量。
在python中,通常用全部大写的变量名表示常量。
python中有两个比较常见的变量名,即PI和E.
PI:数学常量pi(圆周率,一般以π表示)。
E:数学常量e,即自然对数。
3.变量和关键字
3.1 变量
变量指向各种类型的值的名字,以后再用到这个值时,直接引用名字即可,不用再写具体的值。
在python中,变量使用的环境非常宽松,没有明显的变量声明,而且类型不是固定的。
你可以把一个整数赋值给变量,如果觉得不合适,把字符串赋给变量也行。
在python中,等号(=)是赋值语句,可以把任意数据类型赋值给变量。
如果要定义一个名为a的变量,该怎么操作呢?输入如下:
>>>a='xiaoming'
注意:字符串必须义引号标记开始,并以引号标记结束。
此操作解释:a是我们创建的变量,=是赋值语句,xiaoming是变量值,需要用引号标记。
整句话的意思是:创建变量a,并赋值为xiaoming。
要输出内容如下操作:
>>>print(a)
xiaoming
在使用变量前需要对其赋值。没有值的变量是没有意义的,编译器也不会编译通过。
同一个变量可以反复赋值,而且可以使不同类型的变量,输入如下:
>>>a=123
123
>>>a='ABC'
ABC
这种变量本身类型不固定的语言称为动态语言,与之对应的是静态语言。
静态语言在定义变量时必须指定变量类型,如果赋值时类型不匹配就会报错。
和静态语言相比,动态语言更灵活。
当不能确定变量或数据的类型时,可以借助解释器内置的函数type进行确认。
在交互模式可以输入如下:
>>>type('hello,world')
<class'str'>
测试得到的输入结果类型是字符串类型(str)。
3.2 变量名称
程序常常选择有意义的名称作为变量名,以此标记变量的用途。
变量名是由数字或字符组成的任意长度的字符串,必须以字母开头。
使用大写字母是合法的,但变量名建议使用小写字母开头。python是区分大小写的。
>>>name='study python is happy'
>>>Name='I agree with you'
>>>print(name)
'study python is happy
>>>prit(Name)
I agree with you
下划线“_”可以出现在变量名中,经常用于连接多个词组,如happy_study,do_it_with_more_practice。
>>>happy_study='stay hungry stay foolish'
>>>print(happy_study)
stay hungry stay foolish
如果给变量取非法的名称,解释器就会显示语法错误。如下:
>>>2wrongtest='just for test'
SyntaxError:invalid syntax
该示例提示语法错误,错误信息为无效的语法,原因为不是以字母开头的。
>>>xiaoming@me='suprised'
SyntaxError:can't assign to operator
该示例提示语法错误,错误信息为不能做指定操作,原因是包含了一个非法字符@。
python不允许使用关键字作为变量名,如下:
>>>from='from'
SyntaxError:invalid syntax
python3中共有33个关键字,都不能作为变量名来使用。
4.语句
语句是python解释器可以运行的一个代码单元,也可以理解为可以执行的命令。我们目前已经使用了两种语句:print打印语句和赋值语句。
赋值语句有两个作用:一是建立新的的变量,二是将值赋予变量。任何变量在使用时都必须赋值,否则会被视为不存在的变量。
5.表达式
表达式是值、变量和操作符的组合。单独一个值可以看作表达式,单独的变量也可以看作表达式。
6.运算符和操作对象
6.1 什么是运算符和操作对象
运算符是一些特殊符号的集合,操作对象是由运算符连接起来的对象
pythone支持以下7钟运算符:
1.算数运算符 2.比较运算符 3.赋值运算符
4.逻辑运算符 5.位运算符 6.成员运算符 7.身份运算符
6.2 算术运算符
6.3 比较运算符
6.4 赋值运算符
6.5 位运算符
6.6 逻辑运算符
6.7 成员运算符
6.8 身份运算符
6.9 运算符优先级