Python笔记 0x00

Python基础

Python特点

  • 人生苦短,我用Python
  • 大量的第三方库
  • 开源
  • 无需考虑底层细节
  • 面向对象
  • 动态强类型语言

Python基础

  • 输入
    input()方法

    t = input("test:")
    
  • 输出
    print()方法

    print('test')
    
  • 变量
    变量可以是任意数据类型,整数浮点数字符串等
  • 数据类型
    • 整数
    • 浮点数
    • 字符串
    • 布尔值(与或非)
    • 空值(None)
    • 列表(list)
    • 元组(tuple)
    • 字典(dict)

      列表和元组

      列表

  • list是一种可变有序集合
    初始化一个list

    a = ['a','b','c']
    

    通常用索引访问list中每一个元素的位置

    1
    2
    a = ['a','b','c']
    print(a[0])

    越界时会报错
    索引可以为负数,-1是最后一个元素

  • insert()方法
    元素插入到指定位置

    1
    2
    3
    a = ['a','b','c']
    a.insert(1,'d')
    a =['a','d','b','c']
  • append()方法

  • pop()方法
    删除list末尾元素

    pop()
    

    删除指定位置

    pop(i)
    
  • 可以直接赋值进行修改
  • list的元素仍可以是list(类比二维数组)

    元组

  • 和list类似,但初始化后无法修改,tuple是不变的
  • 必须在初始化时赋值
  • 只定义一个元素时要加逗号

    a = (1,)
    

    否则定义的是1而不是一个tuple

    • tuple不变的本质含义是tuple的指向不变,当tuple中含有list时,list的值可变。

      字典

  • 使用键值对存储(key-vaule)

    a = {'a': 1,'b':2,'c':3}
    
  • 键值对可以初始化时指定,也可以通过key放入,访问时key加引号
  • 可以用key作为索引获取值,也可以通过get(key)方法

    a.get(a)
    
  • pop(key)方法可以删除指定的key-vbaule

  • dict的key必须是不可变对象
  • 字典是无序的

    set

    流程控制语句

    条件判断

  • if
    1
    2
    3
    4
    if a > b:
    pass
    else:
    pass

else if 写为elif
注意冒号和缩进

循环

  • for
    1
    2
    for x in m :
    print(x)

m是一个可迭代对象,比如列表

  • while

    1
    2
    while True:
    pass
  • break
    在循环中,break可以提前退出循环

  • continue
    continue可以跳过本次循环,开始下一次循环

    字符串及编码问题

  • 编码的本质
    计算机只能处理数字,约定数字所对应的符号。
  • 常用
    • utf-8
    • unicode
  • decode()编码方法
  • encode()解码方法
  • ord()返回字母的整数表示
  • chr()显示数字对应的字符
  • 字符串的格式化输入输出

    print('%s,%d'%('string',50))
    

或者使用format()方法