Python-Task1 变量、运算符与数据类型

Python-Task1 变量、运算符与数据类型

学习内容

廖雪峰老师python教程https://www.liaoxuefeng.com/wiki/1016959663602400


python简介

Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言。

Python是用来编写应用程序的高级编程语言。Python有非常完善的基础代码库。用Python开发,许多功能不必从零编写,直接使用现成的即可。总之一句话,人生苦短,我选python!

Python的交互模式和直接运行.py文件有什么区别呢?

直接输入python进入交互模式,相当于启动了Python解释器,但是等待你一行一行地输入源代码,每输入一行就执行一行。

直接运行.py文件相当于启动了Python解释器,然后一次性把.py文件的源代码给执行了,你是没有机会以交互的方式输入源代码的。

Python语法规范

  • 以#开头的语句是注释

  • 以:结束时,缩进的语句是为代码块

  • 应该始终坚持使用4个空格的缩进。

变量

变量的概念和代数方程系统是变量是一致的,只不过,变量除了是数字以外,还可以是任意的数据类型。

变量名:在程序中用变量名表示一个变量。要求,大小写英文数字和_的组合,不能以数字开头

aa12_a12 都是合法的

12a12_ss 是不合法的

我们用等号=将任意数据类型赋值给变量。python非常友好的一点是,不需要声明变量类型。同时一个变量可以反复赋值,而且可以是不同数据类型的变量。

a=123 #a是整数

a=“wenjunjie” #a变成了字符串

这种变量类型不固定的语言叫做动态语言。

python语言有一个很有意思的机制,和小甲鱼说的,python中的变量更像是一个标签,然后去贴在数据上。

事实上,我们写赋值语句,诸如:a=‘ABC’ 的时候,python编译器干了一下两件事情。

1.在内存中创建了一个‘ABC‘的字符串。

2.在内存中创建了一个名为a的变量,并把它指向’ABC’。

当一个变量a赋值给另外一个变量b时,实际上是把变量b指向变量a所指向的数据。

说到变量不得不补充常量。

常量:就是不能变的变量


运算符

以下把python所有的运算符汇总了一下

运算符 描述 实例
+ 加 - 两个对象相加 a + b 输出结果 31
- 减 - 得到负数或是一个数减去另一个数 a - b 输出结果 -11
* 乘 - 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 210
/ 除 - x 除以 y b / a 输出结果 2.1
% 取模 - 返回除法的余数 b % a 输出结果 1
** 幂 - 返回x的y次幂 a**b 为10的21次方
//地板除 取整除 - 向下取接近除数的整数 >>> 9//2 4 >>> -9//2 -5
== 等于 - 比较对象是否相等 (a == b) 返回 False。
!= 不等于 - 比较两个对象是否不相等 (a != b) 返回 True。
> 大于 - 返回x是否大于y (a > b) 返回 False。
< 小于 - 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。注意,这些变量名的大写。 (a < b) 返回 True。
>= 大于等于 - 返回x是否大于等于y。 (a >= b) 返回 False。
<= 小于等于 - 返回x是否小于等于y。 (a <= b) 返回 True。
运算符 描述 实例
= 简单的赋值运算符 c = a + b 将 a + b 的运算结果赋值为 c
+=(不建议使用) 加法赋值运算符 c += a 等效于 c = c + a
-= 减法赋值运算符 c -= a 等效于 c = c - a
*= 乘法赋值运算符 c *= a 等效于 c = c * a
/= 除法赋值运算符 c /= a 等效于 c = c / a
%= 取模赋值运算符 c %= a 等效于 c = c % a
**= 幂赋值运算符 c **= a 等效于 c = c ** a
//= 取整除赋值运算符 c //= a 等效于 c = c // a
运算符 描述 实例
& 按位与运算符:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0 (a & b) 输出结果 12 ,二进制解释: 0000 1100
| 按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1。 (a | b) 输出结果 61 ,二进制解释: 0011 1101
^ 按位异或运算符:当两对应的二进位相异时,结果为1 (a ^ b) 输出结果 49 ,二进制解释: 0011 0001
~ 按位取反运算符:对数据的每个二进制位取反,即把1变为0,把0变为1。~x 类似于 -x-1 (~a ) 输出结果 -61 ,二进制解释: 1100 0011, 在一个有符号二进制数的补码形式。
<< 左移动运算符:运算数的各二进位全部左移若干位,由"<<"右边的数指定移动的位数,高位丢弃,低位补0。 a << 2 输出结果 240 ,二进制解释: 1111 0000
>> 右移动运算符:把">>“左边的运算数的各二进位全部右移若干位,”>>"右边的数指定移动的位数 a >> 2 输出结果 15 ,二进制解释: 0000 1111
运算符 逻辑表达式 描述 实例
and x and y 布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 (a and b) 返回 20。
or x or y 布尔"或" - 如果 x 是 True,它返回 x 的值,否则它返回 y 的计算值。 (a or b) 返回 10。
not not x 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 not(a and b) 返回 False

身份运算符用于比较两个对象的存储单元

运算符 描述 实例
is is 是判断两个标识符是不是引用自一个对象 x is y, 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 False
is not is not 是判断两个标识符是不是引用自不同对象 x is not y , 类似 id(a) != id(b)。如果引用的不是同一个对象则返回结果 True,否则返回 False。

数据类型

计算机除了能够处理数值之外,还能够处理文本、图形、音频等各种各样的数据,不同类型的数据,就需要定义不同的数据类型。其中python能处理的数据类型包括整数,浮点数,字符串,布尔值,空值,变量,常量。

整数:

这里的整数就是数学意义上的整数,python语言很强大,可以处理任意大小的整数(不像其他语言有限制)。例如:1,0,100,-200等。当然有时候使用十六进制比较方便,我们只需用0x表示十六进制前缀就好。

浮点数:

浮点数就是小数。(所谓浮点数是因为在科学计数法中,一个浮点数的小数点的位置是可变的)。

需要注意的是,由于计算机内部存储机制的问题,整数运算时精确的,但是浮点数运算可能会有四舍五入的误差。

python的浮点数虽然也是没有大小限制的,但超出一定的范围就会直接表示为inf(无限大)。

字符串:

字符串是以单引号'或双引号"括起来的任意文本。例如’wenjunjie’,“hello world”,“123”。

我们使用转义字符\对字符串内部的单引号双引号进行表示,例如

“I\'m\"ok\"! ”

转义字符可以转很多字符。比较常用的有\n 表示换行,\t 表示制表 ,\\代表字符对自身的转义

python有一个特殊的换行语法, 用'''...'''的格式表示多行内容。

print('''line1
... line2
... line3''')
line1
line2
line3

注意了,其中…是提示符不是语法内容,…只会在交互式命令行中出现。

布尔值:

布尔值只有True,False两种值。可以用 and or not运算

以下为实验代码(在交互式窗口)

>>> True
True
>>> False
False
>>> True and False
False
>>> True or False
True
>>> not True
False
>>> 3>5
False
>>> 3>5 or 5>3
True
空值:

空值是python中的一个特殊值,表示为None。

还有一些数据类型,例如列表,字典在后续学习中进行补充

你可能感兴趣的:(Python)