Python 学习笔记(一)[语法基础]

版权声明:火炉大印—曲奇喵 https://blog.csdn.net/afsya/article/details/84346088

数据类型

数字

  • 整数(int,long):内存决定长度,不支持自增(++)和自减(–)
  • 浮点数(float):带小数点的数,无穷小数会做精度处理
  • 布尔(bool):非空(None)非 0 → true,0 或空(None) → false
  • 复数(complex):表示向量,如:2 + 3j 或 2 + 3J

字符串(str)

  • 定义:单引双引交替使用,不可变
  • 索引:str[index],从左往右 → 从 0 开始,从右往左 → 从 -1 开始
  • 切片:str[start:stop:step],左闭右开

列表(list)

  • 定义:可保存任意类型,如:[1,0.2,‘abc’,[1]]
  • 操作:支持索引和切片,修改:str[index] = 任意类型的值
  • 字符串 → 列表:eval(’[1,2,3,4]’)

元组(tuple)

  • 定义:与列表类似,可保存任意类型,如:(1,0.2,‘abc’,(1)),只含有一个元素时,会转变成数据的类型,所以要加逗号:myTuple
    = (1,)
  • 操作:支持索引和切片,不支持修改,但可以修改其中的列表中的元素值

变量引用计数

  • 拥有相同值的变量共享一个地址
  • 用 sys下的 getrefcount() 查看引用计数
import sys
sys.getrefcount(value)
  • 优点:节约内存,防止产生多余的内存碎片

运算表达式

算数表达式

  • 除法精确到浮点数,其它运算返回值类型,取决于参与运算中最复杂的类型
  • //:向下取整,如:7 // 2 = 3
  • round():可控制结果精度,默认四舍五入,如:round(10/3,4) = 3.3333,round(10/3) =
    3,round(7/2) = 4
  • %:取余,如:7 % 2 = 1
  • **:幂,如:2 ** 4 = 16

逻辑表达式

表达式 意义
not a 非 a
a and b a 且 b
a or b a 或 b
a is b a 和 b 是一个对象
a is not b a 和 b 不是一个对象
  • ==:只判断值
  • is:判断值、内存地址、数据类型

关系表达式

表达式 意义
a == b a 等于 b
a != b a 不等于 b
a <> b 已废弃
a > b a 大于 b
a < b a 小于 b
a >= b a 大于等于 b
a <= b a 小于等于 b

位运算

表达式 意义
~a 安位取反
a << n 左移 n 位
a >> n 右移 n 位
a & b 按位与
a | b 按位或
a ^ b 按位异或

二进制

计算机中存储的是补码,位运算是补码在进行运算,整数的源码、反码、补码都是其本身

1 -1 负数步骤
源码 0000 0001 1000 0001 符号位在第一位,正 → 0,负 → 1
反码 0000 0001 1111 1110 符号位不变,其它取反
补码 0000 0001 1111 1111 反码加一

判断、循环

if

if a == b:
    print('a == b')
elif a < b:
    print('a < b')
else:
    print('a > b')

while

while a > 10:
    print('a > 10')
    if(a < 20):
        print('a < 20')
        break
    a = a - 10

for

for var in [1,2,3]:
    if var == 2:
        continue
print(var)

猜你喜欢

转载自blog.csdn.net/afsya/article/details/84346088