天天看点

python整商运算符_Python全栈之路-1-基本类型与运算符

本文代码地址​github.com

变量与类型

在计算机程序中,数据存储在内存中,在Python中通常不会直接操作内存地址来读写数据,而是变量来读写数据,即变量是操作数据的载体. 不同的变量可以储存不同的数据类型,在Python中以下为几种常用的基本类型整型(int):整数类型,除了常见的十进制(如30)外,还支持二进制(如0b11110),八进制(如0o36),十六进制(如0x1E)的数据.

浮点型(float):就是我们通常意义下的小数类型,还可以用科学记数法表示(如123000可用1.23e5表示).

布尔型(bool):布尔类型只有True和False两种值,用于表示逻辑真和假.

字符串(str):使用单引号或双引号括起来的文本(如'Welcome to Python!'或"Welcome to Python!").

变量命名

对于变量我们都需要给它取一个名字,在Python中变量的命名需要遵循以下规则变量名可由字母,数字,下划线构成,但不能以数字开头. 如user_id, user1, user2等

大小写敏感,uid与UID是不同的变量.

不能使用Python语言的关键字作为变量名

Python关键字如下

注释单行注释,以#开头表示单行注释,如

# 这是注释,注释的目的是对程序进行一些必要的说明,增加代码可读性多行注释,使用三引号表示多行注释,如

"""

这是

一个

多行

注释

"""

还可以使用单引号

'''

这也是

一个

多行

注释

'''

# a是一个整数

a = 30

# b是一个浮点数

b = 13.57

# c是布尔类型

c = True

# d是字符串类型

d = "Welcome to Python world!"

# 输出变量类型,在Python中可以使用type函数获取变量类型

print(type(a))

print(type(b))

print(type(c))

print(type(d))

类型转换

不同类型的变量可以相互转换,Python内置了如下函数进行类型转换int():将输入变量转换为整型

float():将输入变量转换为浮点型

str():将输入变量转换为字符串型

a = 30

b = 13.57

c = "99"

d = "没有比Python更简单的编程语言"

# 将整数转换为字符串

print("int -> str: '{}'".format(str(a)))

# 将浮点数转换为字符串

print("float -> str: '{}'".format(str(b)))

# 将字符串转换为整数

print("str -> int: {}".format(int(c)))

# 将字符串转换为浮点数

print("str -> float: {}".format(float(c)))

# 将字符串转换为布尔类型

print("str -> bool: {}".format(bool(c)))

int -> str: '30'

float -> str: '13.57'

str -> int: 99

str -> float: 99.0

str -> bool: True

假值

任何对象都可以进行逻辑值的检测,以便在if或while作为条件或是作为下文所述布尔运算的操作数来使用,以下列出了会被视为假值的内置对象被定义为假值的常量:None和False

任何数值类型的零:0, 0.0, Decimal(0), Fraction(0, 1)

空字符串或空序列:'', (), [], {}, set(), range(0)

布尔运算符

布尔运算符用于进行逻辑值的计算,在if和while等控制语句中会频繁用到

a = 1

b = 1

c = "我是一个非空字符串"

# 只要有一个条件为真则判断为真,这里a>3为False,但是b>0为True,所以最终结果为True

if a > 3 or b > 0:

print("a大于3或者b大于0")

# 两个条件都为真的时候才判断为真这里a==b为True,且c是一个非空字符串,两项都为True,所以最终结果为True

if a == b and c:

print("a等于b且c是一个非空字符串")

# 逻辑取反,这里a>1为False,对它取反则为True

if not a > 1:

print("a不大于1")

a大于3或者b大于0

a等于b且c是一个非空字符串

a不大于1

比较运算符

比较运算符用于判断值的大小或相等与否,以下为Python支持的比较运算符

a = 1

b = 3

c = 3

# a小于b,结果为True

if a < b:

print("a小于b")

# a小于等于b,结果为True

if a <= b:

print("a小于或等于b")

# c大于a,结果为True

if c > a:

print("c大于a")

# c大于等于a,结果为True

if c >= a:

print("c大于或等于a")

# b等于c,结果为True

if b == c:

print("b等于c")

# a不等于b,结果为True

if a != b:

print("a不等于b")

a小于b

a小于或等于b

c大于a

c大于或等于a

b等于c

a不等于b

算术运算符

算数运算符用于数值计算,以下为常见的算术运算符

a = 2

b = 5

# 加法

print("{} + {} = {}".format(a, b, a+b))

# 减法

print("{} - {} = {}".format(a, b, a-b))

# 乘法

print("{} * {} = {}".format(a, b, a*b))

# 除法

print("{} / {} = {}".format(b, a, b/a))

# 计算商

print("{} // {} = {}".format(b, a, b//a))

# 计算余数

print("{} % {} = {}".format(b, a, b%a))

# 指数运算

print("{} ** {} = {}".format(a, b, a**b))

2 + 5 = 7

2 - 5 = -3

2 * 5 = 10

5 / 2 = 2.5

5 // 2 = 2

5 % 2 = 1

2 ** 5 = 32

按位运算符

按位运算只对整数有意义,以下为Python位运算符

# a和b为两个二进制整数

a = 0b10110

b = 0b11011

# 输出查看a和b的十进制表示

print("a = {}".format(a))

print("b = {}".format(b))

# a和b的所有位进行或操作,括号中为十进制表示结果

print("{:#b} | {:#b} = {:#b} ({})".format(a, b, a|b, a|b))

# a和b的所有位进行异或操作,括号中为十进制表示结果

print("{:#b} ^ {:#b} = {:#b} ({})".format(a, b, a^b, a^b))

# a和b的所有位进行按位与操作,括号中为十进制表示结果

print("{:#b} & {:#b} = {:#b} ({})".format(a, b, a&b, a&b))

# 对a进行左移操作,左移n位相当于乘以2的n次方,括号中为十进制表示结果

print("{:#b} << {} = {:#b} ({})".format(a, 2, a<<2, a<<2))

# 对b进行右移操作,右移n位相当于除以2的n次方,括号中为十进制表示结果

print("{:#b} >> {} = {:#b} ({})".format(b, 2, b>>2, b>>2))

# 将a的所有位翻转,1变0,0变1,括号中为十进制表示结果

print("~{:#b} = {:#b} ({})".format(a, ~a, ~a))

a = 22

b = 27

0b10110 | 0b11011 = 0b11111 (31)

0b10110 ^ 0b11011 = 0b1101 (13)

0b10110 & 0b11011 = 0b10010 (18)

0b10110 << 2 = 0b1011000 (88)

0b11011 >> 2 = 0b110 (6)

~0b10110 = -0b10111 (-23)

赋值运算符

赋值运算符的作用是将右边的值赋给左边的变量,以下为常用的赋值运算符

# 直接将5赋给变量a

a = 5

# 等价于a = a + 2

a += 2

# 等价于a = a - 2

a -= 2

# 等价于a = a * 2

a *= 2

# 等价于a = a / 2

a /= 2

# 等价于a = a // 2

a //= 2

# 等价于a = a % 2

a %= 2

# 等价于a = a ** 2

a **= 2

a = 5

# 等价于a = a << 2

a <<= 2

# 等价于a = a >> 2

a >>= 2

# 等价于a = a & 2

a &= 2

# 等价于a = a | 2

a |= 2

# 等价于a = a ^ a

a ^= 2