变量就是可变的量,对于一些有可能会经常变化的数据,我们需要使用一个符号,这样才能计算中使
用它,就像我们在小学时学过的一元方程中的"x"一样。比如说,我们在控制台内输入:
x = world
print("Hello",x)
注意:python里面定义变量不需要声明数据类型
在Python中,变量名遵循以下的规则:
- 变量名由字母、数字和下划线组成,也就是a-z, A-Z, 0-9和_
- 变量名不能以数字开头
- 变量名是区分大小写的,比如a 和 A就是两个不同的变量。
另外,在此基础上,我们也约定了一些变量名的命名规范。比如:
- 普通变量一般用小写字母
- 最好不要用单词加数字的方式来命名变量,尤其是没有意义的随机数字。
- 有两种风格的变量名:单词之间用下划线隔开;每个单词的首字母使用大写字母(也称为驼峰命名
法)
python 的关键字是不能作为变量来使用的,如果你一不小心定义了一个与关键字相同的变量,代码会在运行的时候报错
变量是可以重复使用,并且是可以修改的,由于Python的变量不需要先声明,所以变量的声明和赋值是 在同一行代码完成的
在变量定义完成后,我们可以随意读取、修改它的值,比如:
name = “张三”
print("Mr", name)
# 修改变量的值为"Jones"
name = "李四"
print("Mr", name)
有时候,我们需要定义好几个变量,以进行计算。比如现在我想要定义三个变量,并把它们的值都设为 1,可以这样写:
a = b = c = 1 ##三个变量值相同
a, b, c = 1, 2, 3 ##三个变量赋值不同值
在Python中,我们一般无需手动的去销毁变量,Python的垃圾回收机制会帮我们处理掉那些不再使用 的变量,如果我们想刻意销毁删除某个变量,可以使用del关键字
del name
Python中数值有两种类型,整形(int)和浮点型(float),通俗一点的讲,一个是不带小数点的,一个带小数点的。
a = 100
b = 3.1444
c = a + b ##整形和浮点形数值可以相互运算
print(c)
字符串就很简单了,单引号或者双引号引起来就是字符串了
a = "Hello world"
print(a)
当如果字符串含有特殊字符,比如双引号,我们可以加一个\来进行转义
print("Buddha: \"What we think, we become.\"")
# 输出的结果是:Buddha: "What we think, we become."
有时候我们要定义的字符串比较长,超出了一行的长度,在编写的时候使用一个反斜杠""来连接多行:
sentence = "This's a very long long long \
long long sentence............"
print(sentence)
如果说还有更长的字符串,类似一整段话,我们可以使用三引号(也可以用单引号)
zen = """Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense."""
print(zen)
布尔值只有两个值: True 和 False,顾名思义,True代表真,False代表假,我们用布尔值一般是用来做 条件判断.
空值None是Python中的一个特殊值,它代表空值,表示“什么都有”,None同时也是关键字。None 的用处有很多,比如说你想定义一个变量,但一时还没想好给它赋什么值,甚至连它用什么类型也没定好,这时可以先赋值None
a = None
print(a)
1)布尔值转换
要想把其他值转换为布尔值,需要使用一个内置函数bool()
# 以下值都为True
bool(1)
bool(-1)
bool(255)
bool(0.0000001)
bool(-99.99)
# 下面的值为False
bool(0)
bool(0.0)
对于数值类型,所有的非零值转换为True, 只有零值才转换为False.
# 这是一个空字符串,转换结果为False
bool("")
# 转换结果为True
bool("abc")
# 这是一个只包含一个空格的字符串,转换结果为为True
bool(" ")
# 结果为False
bool(None)
对于任何非空的字符串,转换为布尔值都是True。注意第一行代码和第三行代码的区别,空值转换为布尔值永远都是False
2)、字符串转换
使用str() 将其他类型转换为字符串即可
3)、数值转换
数值转换是我们在数据分析过程中经常用到的,因为我们从任何文件中读到的数字一开始都是字符串,需要将它们转换为数值才能进行运算
如果想要把一个整数字符串转换为int类型,使用int();
num = "22"
b = int(num) + 11
print(b)
# 数值的前后带有空格也可以成功转换
int(" 100 ") # 结果为100
# 带有符号的数字也可以成功转换
int("-1") # 结果为-1
int("+1") # 结果为1
把一个带小数点的字符串转换为float类型,使用float()
pi = "3.1415926"
b = float(pi)
print(b)
int类型和flfloat类型之间也可以相互转换
int(3.14) #结果为3
int(9.9) # 结果为9
float(100) # 结果为100.0
注意 float在被转换为int 的过程中,它的小数部分精度将被丢弃,只取整数部分。
布尔值也可以转换为int或者float
int(True) # 结果是1
int(False) # 结果是0
float(True) # 结果是1.0
float(False)# 结果是0.0
运算符 | 描述 | 实例 |
---|---|---|
+ | 加 | 1 + 1; a + b |
- | 减 | 10 - 5; a - b -c |
* | 乘 | 4 * 2 相当 4 × 2 |
/ | 除 | 4 / 2 相当于 4 ÷ 2 |
// | 取整除 | 10 // 4 结果是 2 |
% | 取模 | 10 % 4 相当于 10 - (10 // 4) × 4 |
** | 指数 | 2 ** 3 相当于 2 * 2 * 2,也就是2的3次方 |
() | 小括号 | 提高运算优先级,比如: (2 + 8) * 3 |
运算符 | 描述 | 实例 |
---|---|---|
+= | 加法赋值运算符 | 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 |
比较运算符是用来运算布尔值的, 将两个值放在一起比较,最后得到True或者False
运算符 | 描述 | 实例 |
---|---|---|
== | 等于 | 100 == 100 |
!= | 不等于 | 100 != 99 |
> | 大于 | 2 > 1 |
< | 小于 | 1 < 2 |
>= | 大于等于 | 3 >= 2 |
<= | 小于等于 | 2 <= 3 |
真实的程序中,常常需要判断的条件是复杂的,所以我们需要逻辑运算符将多个比较运算连接起来
运算符 | 逻辑表达式 | 描述 | |
---|---|---|---|
and | x and y | 任意一个是False,结果就是False | True and False 结果为False |
or | x or y | 任意一个是True,结果就是True; | True or False 结果为True |
not | not x | 将条件取反 | not False 结果为True |
# 定义两个变量
a, b = 1, 2
a > 0 and a < b # True
a % 2 == 0 or b % 2 == 0 # True
not a > b # True