本篇内容:
1.Python的变量
2.数据类型
3.运算
4.表达式if...elif...else
5.while循环
6.for循环
一、Python的变量
1.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‘]
2.Python变量赋值
>>> variable = "hello world"
上述代码声明了一个变量,变量名为: variable,变量variable的值为:hello world。
注意,变量内容为字符串时要用引号引起来,单引号或双引号都行,不然系统会认为写的内容是一个变量,而不是普通的字符串。变量内容为数字时可以不用引号引起来;
3.显示变量内容
>>> variable = "hello world" >>> print(variable) hello world
通过print就能显示变量的内容
4.删除变量
del variable
del就能删除一个变量,这也是Python中通用的方法。
5.变量命名的建议
●变量命名最好要有含义,让别人一眼就能看懂这个变量是做什么用,代码写出来不只是自己看,别人也会看你写的代码,另外也会显得自己很low。例如:存姓名时,变量名可以命名为name。存年龄时变量名可以命名为age。
●重要的事情说三遍:不要用中文做变量名,不要用中文做变量名,不要用中文做变量名,虽然Python 3.X版本可以用中文的变量名,但也不要这么干,太山炮啦。
●如果变量名是多个单词组合的情况,如果直接连在一起写,这样也不太好识别,可以使用下划线连接起来,有的人喜欢每个单词首字母大写,这个就根据个人喜好来写吧。
●如果定义了一个变量,以后也不能修改这个变量的内容,可以通过将该变量名全部大写来告诉其他人这是一个常量,不要修改它。注:常量就是不会变的量,例如一说到π,大家就会想到它的值为3.141592654...,π就是一个常量。
6.通过与用户交互取得变量内容
>>> job = input("What is your job:") What is your job:IT >>> print(job) IT
通过input就可以让用户根据提示来输入内容,注意,input括号中的提示内容要用单引号或双引号引起来。
二、数据类型
1.数字,此处主要介绍常用的类型:int(整型)
先说下,在Python 2.X版本中还有个long(长整型),在32位系统的机器上,整数的位数为32位,取值范围为-2的31次方~2的31-1次方,即-2147483648~2147483647。在64位系统上,整数的位数为64位,取值范围为-2的63次方~2的63-1次方,即-9223372036854775808~9223372036854775807。一旦超过规定范围后数据类型就是long(长整型)了,但在Python 3.X中长整型和整型合并为整型了,不管数字写多大,数据类型都为int(整型)。
数字中还有float(浮点型)、complex(复数)的数据类型,但不常用,这里就不做具体介绍了,有兴趣的话可以查阅下其它资料。
2.string(字符串)
"hello world"
上面的hello world就是一个字符串,字符串用的很多,常用功能有:移除空白、分割、长度、索引、切片;
3.布尔值
布尔值只有两个值,数字1代表真(True),数字0代表假(False)。
4.bytes(字节数据类型)
在Pyhont 2.X中认为字节数据类型就是字符串数据类型,但在Python 3.X 中,对文本和二进制数据作了区分。文本是Unicode,由str类型表示。二进制数据则有bytes类型表示,音频和视频文件使用二进制存储;
5.列表(list)
>>> listname = ["ab", "cd"]
上面的例子就是一个列表,Python中使用的很多,以后博客会细说列表。
6.元组(tuple)
>>> tuplename = ("ab", "cd")
上面的例子就是一个元组,元组就是一个不能改变的列表而已,只能做切片和查询,不能更改里面的内容,以后的博客中会详细说明。
7.字典(dict)
>>> dictname = { "key1": "value1" "key2": "value2" }
上面的例子就是一个字典,Python中使用的很多,在以后博客中会详细说明。
三、运算
1.算数运算
+:加,例如1+2结果为3;
-:减,例如2-1结果为1;
*:乘,例如2*2结果为4;
/:除,例如4/2结果为2;
%:取模,例如10%3结果为1;
**:幂,例如2**3结果为8;
//:取商的整数部分,例如11//3结果为3
2.比较运算
==:等于;
!=:不等于,这种表示方法用的多,并且也是通用的;
<>:不等于另一种写法,这种方法用的少;
>:大于;
<:小于;
>=:大于等于;
<=:小于等于;
3.赋值运算
=:简单赋值运算,例如c = a + b;
+=:加法赋值运算,例如b += a等同于b = b + a;
-=:减法赋值运算,例如b -= a等同于b = b - a;
*=:乘法赋值运算,例如b *= a等同于b = b * a;
/=:除法赋值运算,例如b /= a等同于b = b / a;
%=:取模赋值运算,例如b %= a等同于b = b % a;
**=:幂赋值运算,例如b **= a等同于b =b ** a;
//=:取整除运算,例如b //= a等同于b =b // a;
4.逻辑运算
and:和、与的关系,例如a and b,只有a和b都为True时,才会返回True。
or:或的关系,例如a or b,a和b只要有一个为True,就返回True。
not:非的意思,例如,a为True,加上not后返回False。
5.成员运算
in:如果在指定的序列中找到值就返回True;
not in:如果在指定的序列中没有找到值就返回True;
6.身份运算
is:例如a = 1,type(a) is int,返回是True;
is not:例如a = 1,type(a) is not str,返回是True;
四、表达式if...elif...else
>>> name = input("请输入用户名") >>> if name == "路人甲": print("欢迎路人甲") >>> elif name == "炮灰乙": print("欢迎炮灰乙") >>> else: print("输入的用户名不存在")
以上面为例,有两点需要注意:
●输入用户名后,程序会先去匹配if后面的条件,如果匹配不上,再去匹配elif后面的条件,都匹配不上最后执行else下面的子代码。注意,if和elif只要有任意一个匹配上了,就只会执行它们自己下面的子代码,执行完后就跳出整个表达式。
●语法的书写格式,Python对代码的缩进有严格要求,所有顶级代码必须顶格写,子代码必须缩进,同级代码采用一样的缩进。
五、while循环
>>> count = 0 >>> while count <= 10: print("ok") count += 1 >>> else: print("count的值大于10")
以上面为例,只有count的值小于等于10时,才会打印ok,当count的值大于10后,会打印count的值大于10,while循环就结束了。
六、for循环
>>> for number in range(0, 10, 1): print(number) >>> else: print("exit")
以上面为例,需要注意的有:
●range后面括号中的值从左到右为:初始值,限制值,步长。初始值默认值为零,步长默认值为一,初始值和步长为默认值时可以省略不写,所以上面又可以写成range(10)。
●运行方式为,当number的值为0到9时,都会打印number的值。当number的值不在0到9之间,会打印exit,整个for循环就结束了。