zoukankan      html  css  js  c++  java
  • 基本数据类型

    python:
    一门弱类型的解释型的高级编程语言

    特点:简单,清晰,明确.
    你为什么学python? 爱好。机器学习。人工智能.

    第一个python程序. helloword

    变量:程序运行过程中产生的中间值。供给后面的程序使用.

    变量的命名规范
    1. 以数字, 字母, 下划线组成
    2. 不能是数字开头, 更不能是纯数字
    3. 不能用关键字
    4. 不要用中文
    5. 不要太长
    6. 有意义
    7. 区分大小写
    8. 建议使用驼峰或下划线命名

    变量的数据类型:
    1. int: 整数 +,-,*,/,%,//, bit_length()
    2. str: 字符串。 由 ',", ''', """.
    + : 拼接
    * : 重复
    % : 格式化输出 %s %d %f
    索引和切片:
    指向每一个字符。 每个字符都有一个唯一的下标
    切片:
    [start:end:step]
    start 起始位置
    end 结束位置。 取不到
    step 步长

    工作原理。 s[start+step]

    方法:
    upper() 转化成大写
    strip() 去掉左右两端的空白
    replace(old, new) 把old换成new
    split() 切割。 默认按照空白切。 切完之后的结果是列表
    join() 把列表中的元素拼接成字符串
    startswith() 以xxx开头。
    find()/count()/index() 查找
    isdigit() 判断数字
    len() 长度
    encode(编码集) 编码

    编码:
    1. ASCII. 8bit. 1byte
    2. GBK. 国标码. GB2312 16bit, 2byte
    3. Unicode. 万国码. 32bit, 4byte
    4. UTF-8. 可变长度的Unicode.
    英文: 1byte
    欧洲: 2byte
    中文: 3byte
    编码之后的数据bytes
    bytes.decode() 解码
    可迭代对象:
    for 变量 in 可迭代对象:
    循环体(break, continue
    else:
    3. bool: 布尔值
    取值: True, False
    用来判断
    类型转换:
    False: 0, '', None, [], {}, tuple(), set()
    True: 除了上面的都是True


    4.list: 列表. 由[]表示.每个元素与元素之间用逗号隔开, 可以装任意类型的数据.
    列表是可变的. 并且列表由索引和切片功能
    ①.
    append() 追加
    insert(索引, 数据)
    extend(Iterable) 迭代添加
    ②. 删除
    pop()
    remove(元素)
    del 切片删
    clear() 清空
    ③. 修改
    索引切片修改
    lst[i] = "新元素"
    ④. 查询
    一般用索引
    for循环


    ⑤. 操作
    count(). 计数
    index() 查找元素
    sort()排序
    reverse() 翻转

    列表不能直接在循环中删除. 因为涉及到元素移动.
    需要把要删除的内容添加到新列表中. 循环新列表. 删除老列表

    拷贝:
    1. = 赋值操作. 没有创建对象. 两个变量使用同一个对象.
    2. 浅拷贝. 只拷贝一层. list.copy(), list[:]
    3. 深拷贝. 和这个对象相关的内部信息全部拷贝一份. deepcopy() 原型模式

    推导式: [结果 for循环 if判断]

    5. dict 字典:
    由{}表示. 内部存储key:value. key必须是可哈希的数据类型. 不可变. value:没有限制
    字典没有索引和切片
    ①.
    dic[新key] = value
    dic.setdefault(key, value)
    ②. 删除
    pop(key)
    popitems() 随机删一个
    del
    clear() 清空
    ③. 修改
    dic[老key] = 新value
    dic.update({}) 把xxx字典更新到字典中

    ④. 查询:
    通过key来查询
    get(key, default)
    setdefault(key, value)
    ⑤. 常用操作
    keys() 获取所有的key
    values()获取所有的value
    items() 获取所有的键值对(key, value)

    可以进行for循环
    for key in dict:
    print(key, dict[key])

    for key in dict.keys():
    print(key, dict[key])

    for value in dict.values():
    print(value)

    for k, v in dict.items():
    print(k,v)

    len() 计算键值对的个数

    字典在迭代的时候不可以改变大小
    把要删除的key保存在列表中. 循环列表. 删除字典

    dict.fromkeys(key, value)
    1. 返回给你新列表.
    2. 所有的key公用同一个value

    推导式: {key: value for循环 if}

    6.tuple元组:
    不可变.
    不可变指的是第一层
    基本上没有操作
    count()
    index()
    len(): __len__()

    可迭代
    for 循环

    7.set 集合
    无序, 不重复, 可哈希(元素)
    去重.
    也可以循环.
    fronzenset() 冻结的集合, 不可变, 可哈希

    基本语法:
    运算符:
    1. 算数运算: +-*/ // % **
    2. 比较运算:> < == >= <= != <>
    3. 逻辑运算:
    and 并且的含义. 左右两端必须同时为真. 结果才能是真
    or 或者. 左右两端有一个是真. 结果就是真
    not 非. 非真既假, 非假既真

    顺序:() => not => and => or
    a or b
    如果a非零。 返回a。 否则返回b
    and和or相反
    a and b
    如果a非零。 返回b。 否则返回0
    4. 赋值运算
    += -= *= /= %=
    a+=b a = a + b

    5. 成员运算
    xxx in xxxx
    6. is和 ==
    is: 比较的是内存地址
    ==: 比较的是值
    小数据池(常量池): 会对str, int, bool进行缓存. 节省内存. 方便调用.


    if语句
    if 条件:
    语句块
    elif 条件:
    语句块
    .....
    else:
    语句块
    while 条件
    循环体
    break 结束当前本层循环
    continue 结束当前本次循环.继续执行下一次循环
    else:
    当条件不成立的时候

    print(打印的内容, xxx, end="结束符", sep="分隔符")
    str = input("提示") 用户交互

    range(10) 0-9
    range(5, 10) 5-9
    range(5, 10, 3) 5 8
    文件操作
    open(文件路径, mode="模式", encoding="编码")
    模式: r, w, a, r+, w+, a+, rb, wb, ab
    for循环可以迭代文件句柄. 拿到的是一行一行的内容
    seek()移动光标
    tell()查看光标位置

    with open(xxxx) as f:
    操作

    文件修改:
    从源文件中读取内容. 修改, 然后写入到新文件中. 删除源文件. 重命名新文件
  • 相关阅读:
    动态规划:DAG-嵌套矩形
    动态规划:LCIS
    动态规划&字符串:最长公共子串
    动态规划:LCS
    动态规划:状压DP-斯坦纳树
    动态规划:数位DP
    JavaScript 正则表达式
    JavaScript 类型转换
    JavaScript typeof, null, 和 undefined
    JavaScript if...Else 语句
  • 原文地址:https://www.cnblogs.com/wodexiaobiji/p/10624058.html
Copyright © 2011-2022 走看看