对Python 有一个认知

记住这是一个动态类型的,弱类型语言

ds =111.0
#弱类型 前面不用写明是具体什么类型
haobo=10

haobo = ds
#类型转换不再有高低之分

hoabo =200
print(haobo)

bobo =2**1000
print(bobo)

haobo = bobo

print(haobo)

数据类型

运算符 描述 实例
+ 加 - 两个对象相加 a + b 输出结果 30
- 减 - 得到负数或是一个数减去另一个数 a - b 输出结果 -10
* 乘 - 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200
/ 除 - x除以y b / a 输出结果 2
% 取模 - 返回除法的余数 b % a 输出结果 0
** 幂 - 返回x的y次幂 a**b 为10的20次方, 输出结果 100000000000000000000
// 取整除 - 返回商的整数部分(向下取整) >>> 9//2 4

比较字符

==
!=

=
<=

<

a = 21
b = 10
c = 0
 
if ( a == b ):
   print ("1 - a 等于 b")
else:
   print ("1 - a 不等于 b")
 
if ( a != b ):
   print ("2 - a 不等于 b")
else:
   print ("2 - a 等于 b")
 
if ( a < b ):
   print ("3 - a 小于 b")
else:
   print ("3 - a 大于等于 b")
 
if ( a > b ):
   print ("4 - a 大于 b")
else:
   print ("4 - a 小于等于 b")
 
# 修改变量 a 和 b 的值
a = 5
b = 20
if ( a <= b ):
   print ("5 - a 小于等于 b")
else:
   print ("5 - a 大于  b")
 
if ( b >= a ):
   print ("6 - b 大于等于 a")
else:
   print ("6 - b 小于 a")

赋值运算符

a+=1===== a=a+1
*=
-=
/=
%=
= c=c2

 
a = 21
b = 10
c = 0
 
c = a + b
print ("1 - c 的值为:", c)
 
c += a
print ("2 - c 的值为:", c)
 
c *= a
print ("3 - c 的值为:", c)
 
c /= a 
print ("4 - c 的值为:", c)
 
c = 2
c %= a
print ("5 - c 的值为:", c)
 
c **= a
print ("6 - c 的值为:", c)
 
c //= a
print ("7 - c 的值为:", c)

逻辑运算符

and == && 与
bool = True False
or == || 或
not 非取反

a = 10
b = 20
 
if ( a and b ):
   print ("1 - 变量 a 和 b 都为 true")
else:
   print ("1 - 变量 a 和 b 有一个不为 true")
 
if ( a or b ):
   print ("2 - 变量 a 和 b 都为 true,或其中一个变量为 true")
else:
   print ("2 - 变量 a 和 b 都不为 true")
 
# 修改变量 a 的值
a = 0
if ( a and b ):
   print ("3 - 变量 a 和 b 都为 true")
else:
   print ("3 - 变量 a 和 b 有一个不为 true")
 
if ( a or b ):
   print ("4 - 变量 a 和 b 都为 true,或其中一个变量为 true")
else:
   print ("4 - 变量 a 和 b 都不为 true")
 
if not( a and b ):
   print ("5 - 变量 a 和 b 都为 false,或其中一个变量为 false")
else:
   print ("5 - 变量 a 和 b 都为 true")

运算符优先级

运算符 描述
(expressions...), 圆括号的表达式
x[index], x[index:index], x(arguments...), x.attribute 读取,切片,调用,属性引用
await x await 表达式
** 乘方(指数)
+x, -x, ~x 正,负,按位非 NOT
*, @, /, //, % 乘,矩阵乘,除,整除,取余
+, - 加和减
<<, >> 移位
& 按位与 AND
^ 按位异或 XOR
in,not in, is,is not, <, <=, >, >=, !=, == 比较运算,包括成员检测和标识号检测
not x 逻辑非 NOT
and 逻辑与 AND
or 逻辑或 OR

a = 20
b = 10
c = 15
d = 5
e = 0
 
e = (a + b) * c / d       #( 30 * 15 ) / 5
print ("(a + b) * c / d 运算结果为:",  e)
 
e = ((a + b) * c) / d     # (30 * 15 ) / 5
print ("((a + b) * c) / d 运算结果为:",  e)
 
e = (a + b) * (c / d)    # (30) * (15/5)
print ("(a + b) * (c / d) 运算结果为:",  e)
 
e = a + (b * c) / d      #  20 + (150/5)
print ("a + (b * c) / d 运算结果为:",  e)

数字类型转换

a=110
b=float(a) #把a转换为了浮点型

当然更加常用的做是

a='111112313123'
b=int(a)
print(b)

a='1111123.3123'
b=int(float(a))#不能跨越两种类型进行转换 要这么写才对
print(b)


type() 查看变量类型

明确的指明要转换的变量

age = 23 
message = "Happy " + age + "rd Birthday!"
print(message)

你可能认为上面会输出一个 Happy 23rd birthday! 但:

Traceback (most recent call last): 
 File "birthday.py", line 2, in <module> 
 message = "Happy " + age + "rd Birthday!" 
 TypeError: Can't convert 'int' object to str implicitly

py发现你使用了一个整形变量,但不知道该如何解读这个值,因为可能是23 也可能是2和3所以需要显示的转换这个变量

age = 23 
message = "Happy " + str(age) + "rd Birthday!" 
print(message)

数学函数

  • abs(x) 返回数字的绝对值,如abs(-10) 返回 10
  • max(x1, x2,...) 返回给定参数的最大值,参数可以为序列。
  • min(x1, x2,...) 返回给定参数的最小值,参数可以为序列。
  • round(x [,n]) 四舍五入函数