基础知识小结

Posted verena

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基础知识小结相关的知识,希望对你有一定的参考价值。

 1. python是一门解释型弱类型高级编成语言语言
    2. 常见的解释器:
        CPython, IPython, pypy,JPython, IronPython
    3. 变量:在程序运行过程中产生的中间值供给后面使用
        命名规范:
            1. 由数字, 字母, 下划线组成
            2. 不能是数字开头, 更不能是纯数字
            3. 不能是关键字(if else elif)
            4. 不要太长
            5. 要有意义
            6. 不要用中文
            7. 区分大小写
            8. 使用驼峰或者下划线
        数据类型:
            1. int(整数)
                +-*/  //  %
            2. str(字符串)
                + *
                int(str)
            3. bool(布尔值) True, False
        常量 : 不存在绝对的常量。所有的字母大写就是常量
        交互 : s = input("提示语")
        条件判断 if语句
            if 条件:
                代码块
            条件成立运行代码块
            if 条件:
                代码块
            else:
                代码块
            if 条件:
                代码块
            elif 条件:
                 代码块
            elif.....
            else:
                代码块
            嵌套
###################################################################
1. while循环
        while 条件:
            代码块(循环体)
            break 结束当前本层循环.
            continue 结束当前本次循环. 继续执行下一次循环
        else:
            当条件不成立的时候执行这里的代码
    2. 格式化输出
        %s 占位符 , 占位的是字符串
        %d , 占位数字
    3. 运算符
        逻辑运算
        and 并且的意思. 左右两端同时为真. 结果才是真
        or 或者的意思. 左右两端有一个是真. 结果就是真
        not 非真既假 非假既真
        顺序: () => not => and => or
        x or y if x == 0 then y else x
        and和or相反
    4. 编码
        1. ASCII. 8bit 1byte
        2. GBK. 16bit 2byte
        3. Unicode 32bit 4byte
        4. UTF-8 可变长度
            英文: 8bit 1byte
            欧洲: 16bit 2byte
            中文: 24bit 3byte
###################################################################
 1. int + - * / % // **
        bit_length()
    2. bool 类型转换
        结论1: 想把刘伟转换成刘德华. 刘德华(刘伟)
        结论2: True => 1 False => 0
        结论3: 可以当做False的数据: 0, "", [], (), {}, set(), None. 所有的空都是False
    3. str字符串
        字符: 单一的文字符号
        字符串: 有序的字符序列
        ‘, ", ‘‘‘, """括起来的内容就是字符串
        索引和切片:
            1. 索引下标从0开始
            2. 切片:[start: end: step]
                1. 顾头不顾尾
                2. 默认从左往右取. 如果step是负数. 从右往左取
        操作:
            1. uppper() 转化成大写
            2. strip()  去掉空白(空格, 制表符 , 换行符 ) white space
            3. replace(old, new) 替换
            4. split() 切割, 结果是列表
            5. startswith() 判断是否以xxx开头
            6. find() index()
            7. isdigit() 判断是否由数字组成
            8. len() 求字符串长度, 内置函数. 直接就可以了
    迭代:
        for 变量 in  可迭代对象:
            循环体
###################################################################
1. 列表的定义:
        能装对象的对象. 由[]表示. 内部使用逗号隔开
        索引和切片 . 从0开始
        [start: end: step]
    2. 增删改查
        1. 新增: append(), insert(), extend()迭代添加
        2. 删除: pop(), remove(), clear(), del 元素
        3. 修改: 索引或切片修改
        4. 查询: 索引查询 for el in list:
        5. 操作: count(), index(), find(), sort(reverse=True), reverse()
    3. 元组(tuple):
        由()表示. 内部用逗号隔开.
        不可变, 只读列表
        不可变指的是第一层元素.
        不可变的数据类型: int, str, bool, (元组)
    4. range()
        range(10) 0-9
        range(1, 12)  1-11
        range(1,12, 3) 1 4 7 10
        for el in list: # 没有索引
        for i in range(len(list)):
            list[i]
###################################################################
 字典:
        由{}括起来. 每个元素用逗号隔开, key:value的形式存储数据
        key: 不可变的. 可哈希的.
        增删改查:
        1. 增加: 直接用新key来赋值.  dict[key] = value  setdefault()
        2. 删除: pop(key), popitems(), clear(), del dict[key]
        3. 修改: dict[key] = value, update()
        4. 查询: get(key) dict[key] setdefault()
        5. 常用操作:
            1. keys() 拿到所有的key
            2. values() 拿到所有的value
            3. items()  拿到所有的键值对. (key, value)
        6. 字典的遍历
            for k,v in dict.items():
            for k in dict:
                dict[k]
###################################################################
 1. 小数据池, 缓存字符串, 整数, 布尔值. 提高内存使用效率. 不需要重复创建对象
        数字: -5~256
        字符串:
            单个直接缓存
            多个字符. 只有数字, 字母, 下划线会缓存
            乘以1,同上
            乘以大于1, 总长度不超过20  4096
        在同一个代码块中. 以上规则会有变化.
            1. 数字. 默认都缓存.
            2. 字符串. 默认也都缓存.
        在不同的代码块中. 遵守的就是最上面的规则
    2. is和==的区别
        == 比较的是值.
        is 比较的是内存地址
    3. 编码
        encode() 编码
        decode() 解码
###################################################################
     join() 把列表中的每一项用字符串拼接起来
        split() 相反
    1. 关于删除(重点)
        1. 循环迭代过程中不能删除。
        2. 创建新列表。 把要删除的内容保存在新列表中。 循环新列表, 删除老列表
        3. 字典在循环的时候可以修改, 但不能新增和删除
        dict.fromkeys(k, v)
        把key迭代。和value组合成k:v创建新字典, 所有的key共享同一个value
    2. set集合(粗略)
        特点: 无序, 去重, 哈希
        lst = []
        list(set(lst)) # 去重复
    3. 深浅拷贝(难点)
        1. 赋值。 不会产生新对象,和拷贝无关
技术分享图片
2. 浅拷贝。 只会复制自身。 会创建对象
技术分享图片技术分享图片
3.深拷贝,把内部所有的内容都进行拷贝

技术分享图片

 

 
 




































































































































以上是关于基础知识小结的主要内容,如果未能解决你的问题,请参考以下文章

Python基础知识小结:

Python基础知识小结

基础知识小结

总结--- python基础知识点小结(细全)

xml基础小结

Android app开发知识小结