基础数据类型的补充,编码的进阶,基础数据类型之间的转换

2023-05-16

1 内容总览

  1. 基础数据类型的补充
  2. 数据类型之间的转换 - 其他数据类型转成bool值为False的情况
  3. 编码的进阶

2 具体内容

  • 数据类型的补充

    • str-6个

      # str :补充的方法练习一遍就行。6个
      # s1 = 'taiBAi'
      # capitalize 首字母大写,其余变小写
      # print(s1.capitalize()) #str的操作,打印的是操作,操作结果才能呈现出来.因为对str进行操作
      
      # title  每个单词的首字母大写
      # msg= 'taibai say3hi'  #用空格 , _ 中文等不是英文的将这个str的一行英文隔开,以划分有几个单词
      # print(msg.title()) 
      
      # center 居中
      # s1 = 'barry'
      # print(s1.center(20))  #不写用谁填充,默认用空格填
      # print(s1.center(20,'*'))  #用*填充左右空白
      
      # swapcase()   大小写转换,每个元素都会换
      # s = "alex"
      # print(s.swapcase())  #"ALEX"
      # s = "Alex"
      # print(s.swapcase())  #"aLEX"   #每个元素都会换
      
      # find :通过元素找索引,若有重的,找到第一个就返回;找不到 返回-1  #推荐使用
      # index:通过元素找索引,若有重的,找到第一个就返回;找不到 报错
      # print(s1.find('a'))
      # print(s1.find('r'))
      # print(s1.find('o'))
      # print(s1.index('o'))
    • 元组 - 3点

      # tuple - 3点
      # 元组中如果只有一个元素,并且没有逗号,那么它不是元组,它与该元素的数据类型一致。 ***
      # tu1 = (2,3,4)
      # tu1 = (2)
      # tu1 = ('太白')
      # tu1 = ([1,2,3])
      # tu1 = (1,)
      # print(tu1,type(tu1))
      # tu = (1,2,3,3,3,2,2,3,)
      
      # count 计数
      # print(tu.count(3))
      # tu = ('太白', '日天', '太白')
      
      # index  通过元素找索引
      # print(tu.index('太白'))
      
    • 列表 - 7点

      # l1 = ['太白', '123', '女神', '大壮']
      # count 计数
      # index  通过匀速找索引(见上)  #list中没有find
      # print(l1.index('大壮'))  #3
      
      # sort 排序 #不能打印动作  **
      # l1 = [5, 4, 3, 7, 8, 6, 1, 9]
      # l1.sort()  # 默认从小到大排序(升序)
      # print(l1)  #不能打印动作
      # l1.sort(reverse=True)  #从大到小排序-降序(需设置参数)
      # print(l1) 
      
      # reverse 反转  #list这-不能打印动作  **      
      # l1 = [5, 4, 3, 7, 8, 6, 1, 9]
      # l1.reverse()  # 反转  
      # print(l1)  #[9, 1, 6, 8, 7, 3, 4, 5]
      
      # 列表可与列表相加 **
      # l1 = [1, 2, 3]
      # l2 = [1, 2, 3, '太白', '123', '女神']
      # print(l1 + l2) #结果:[1, 2, 3, 1, 2, 3, '太白', '123', '女神'] 是相加后放到了1个列表里
      
      # 列表与数字相乘 **
      # l1 = [1, 'daf', 3]
      # l2 = l1 * 3
      # print(l2)   #结果:[1, 'daf', 3, 1, 'daf', 3, 1, 'daf', 3]
      
      
      # 坑1 -列表循环问题:循环一个列表的时,最好不要改变列表的大小(长度),这样会影响你的最终的结果。*** 
      l1 = [11, 22, 33, 44, 55]
      # 将索引为奇数对应的元素删除(不能一个一个删除,此l1只是举个例子,里面的元素个数不定)。
      # 正常思路:
      # 先将所有的索引整出来。
      # 再加以判断,index % 2 == 1: pop(index)
      # for index in range(len(l1)):
      #     if index % 2 == 1:
      #         l1.pop(index)  #删的是元素的索引
      # print(l1)  #出错:列表的特性:因为从前往后删,删完一个元素后,后面的元素会集体前挪,索引改变,导致结果出错 
      
      # 4种办法出坑:
      # 法一:最简单的-不循环了,直接切片删
      # l1 = [11, 22, 33, 44, 55]
      # del l1[1::2]  #从第一个奇数索引开始切
      # print(l1)
      # 法二:倒序法删除元素
      # l1 = [11, 22, 33, 44, 55]
      # for index in range(len(l1)-1,-1,-1):  #range顾头不顾腚
      #     if index % 2 == 1:
      #         l1.pop(index)
      # print(l1)
      # 法三:思维置换-将不用删的拿出来放入1个新列表
      # 将索引为奇数对应的元素删除(不能一个一个删除,此l1只是举个例子,里面的元素个数不定)
      # l1 = [11, 22, 33, 44, 55]
      # new_l1 = []
      # for index in range(len(l1)):
      #     if index % 2 ==0:   #删奇数索引,那就将偶数索引取出来
      #         new_l1.append(l1[index])
      # # print(new_l1)
      # l1 = new_l1
      # print(l1)
      # 法四: 补充-,先把要删的元素取出来,再按元素删
      li = [1,2,3,4,5]
      new_li = []
      for i in range(len(li)):  #遍历索引
          if i % 2 == 1:
              new_li.append(li[i])
      for em in new_li:  #遍历的是元素,
          li.remove(em)  #按元素删-因为按索引删,list后面的元素会向前补位
      print(li)
      
      
      #坑2-循环添加列表元素的时候,会形成死循环
      # 看代码写结果- 平行打印:什么都不打印(因为是死循环);在for循环里面打印,则是打印那些加进去的一大片结果(无休止)
      # li = [1,2,3,4]
      # for i in li:
      #     li.append(i)
      # print(li) #因为每次都会加进去,会一直加下去到无穷 #因为是死循环,一直在循环,故结果出不来,是空白
      #     print(li)   #是打印那些加进去的一大片结果
    • 字典 - 3点

      # 字典的补充 - 3点  
      # update 更新,有则覆盖,无则添加  ***   #不能打印动作
      # 关于update: #update 括号里的级别高--即是用括号里的去覆盖dict里原有的键的值
      # 1.以键值对的形式增
      # dic = {'name': '太白', 'age': 18}
      # dic.update(hobby='运动', hight='175')
      # print(dic)   #结果:{'name': '太白', 'age': 18, 'hobby': '运动', 'hight': '175'}
      # dic.update(name='太白金星')
      # print(dic)  #结果:{'name': '太白金星', 'age': 18}
      
      # 2.以字典的形式增
      # dic1 = {"name":"jin","age":18,"sex":"male"}
      # dic2 = {"name":"alex","weight":75}
      # dic1.update(dic2)  # 更新,有则覆盖,无责添加
      # print(dic1)  # {'name': 'alex', 'age': 18, 'sex': 'male', 'weight': 75}
      # print(dic2)
      
      # 3.面试题:  #考察元组的拆包-即分别赋值,list里的每一个元组就是dic里的键值对
      # dic = {'name': '太白', 'age': 18}
      # dic.update([(1, 'a'),(2, 'b'),(3, 'c'),(4, 'd')]) #1个list里的所有元素都是2元素的元组
      # print(dic)  #{'name': '太白', 'age': 18, 1: 'a', 2: 'b', 3: 'c', 4: 'd'}
      # 注:不能打印动作
      
      # fromkeys 快速创建字典-将可迭代对象拆开当成键,可迭代对象后面的值是所有键的值
      # 写在前面:#坑:必须先赋值再打印,因为创建dict是开辟了1个新的内存空间
      # dic = dict.fromkeys('abc', 100)  #将可迭代对象拆开当成键,100是所有键的值
      # print(dic)  #{'a': 100, 'b': 100, 'c': 100}                                     
      # 坑:(面试题)当可迭代对象的每一个元素赋予1个可变数据类型时,值共用一个,一个[]变其他的[]都变(因为每一个可迭代对象的元素共用的是同一个内存空间[],是一个人,不管里面做任何修改,[]仍然是这个[])
      # dic = dict.fromkeys([1,2,3],[])
      # #print(dic)   #{1: [], 2: [], 3: []}
      # dic[1].append(666)  #代表往dic键1对应的值里追加666
      # print(dic)  #{1: [666], 2: [666], 3: [666]}
      # 补充:当可迭代对象的每一个元素赋予1个不可变数据类型时,1个变,其他的不变
      # dic = dict.fromkeys([1,2,3],1)
      # #print(dic)   #{1: 1, 2: 1, 3: 1}
      # dic[1] = 123
      # print(dic)  #{1: 123, 2: 1, 3: 1}  #1个变,其他的不变,因为是不可变数据类型
      
      
      # 坑-循环问题:循环一个字典时,如果改变这个字典的大小,就会报错。 **重要
      # 需求:将字典中的键中含有'k'元素的键值对删除。 
      # dic = {'k1': '太白', 'k2': 'barry', 'k3': '白白', 'age': 18}
      # for key in dic:
      #     if 'k' in key:
      #         dic.pop(key)
      # print(dic)  #会报错:RuntimeError:字典在迭代期间更改大小
      
      # 2种方法出坑:
      # 出坑1:把含有"k"的键全部加入1个新list中,再去删list里的元素(即dict的键)-2次for循环遍历
      # l1 = []
      # for key in dic:
      # if 'k' in key:
      # l1.append(key)
      # print(l1)
      # for i in l1:
      # dic.pop(i)
      # print(dic)
      # 出坑2:将dic_keys数据类型转换成list,再去删该list里的元素
      # for key in list(dic.keys()):  #将dic_keys数据类型转换成list
      # if "k" in key:     # 代表如果键中含"k"   注:循环的是谁就in谁
      # dic.pop(key)
      # print(dic)        # 注:最后打印的是字典
      
      # 4.popitem() 随机删除 #python3.6版本以后默认删除最后一个键值对
      # dic.popitem()
      # print(dic)
      # 补充:如何更改pycharm解释器的版本
      # 补充:python2 中不支持中文-如何操作可以支持中文?  #几乎用不到
    # 注:dict的3种特殊的查-dic.keys()
    # 1.dic.keys()是一种特殊的数据类型dic_keys,里面的元素是dict的所有的键;它不是列表,只是一个盛着字典所有键的1个容器,可循环遍历,可迭代(待定).
    # 2.数据类型之间的转换:想转换成谁,就用谁包起来.除了dict不能转,其他6种都可以
  • 数据类型的转换- 其他数据类型转成bool值为False的情况

    # 0,''(),[],{},set(),None  转换成bool值为False
    # 注:str-->int时,str里必须都是十进制的数字
    # 注:7种数据类型的转换时,除dict外,其他的均能直接
    # 注:7种中的 无序:dict  set
    # 注:7种中的 可变:list dict set
    
    # 面试题:
    str-->list  #split  #print(s.split())    #用str里没有的符号去分割
    list-->str  #join   #print(''.join(li)) 
    eg1:
    li = ["taibai","小强"]
    print('+'.join(li))   #taibai+小强
    eg2:
    li = ["taibai","小强",3]
    print('+'.join(li))   #报错
    #注:可迭代的对象元素里不能出现int  eg:str里若是int 报错-不是可迭代对象
  • 编码的进阶

    1. 不同的密码本之间能否互相识别?不能。-桥梁是Unicode编码集(见utf-8的byte类型-->gbk的bytes类型,中间的str在内存中的编码方式就是Unicode)
    2. 规定: 数据在内存中全部是以Unicode编码的,但是当你的数据用于网络传输或者存储到硬盘中,必须是以非Unicode进行编码(utf-8,gbk等等),故那7种数据类型要想传输和存储必须转换成bytes类型。
    3. 注: Unicode--> 非Unicode时,只能str和bytes进行转换,其他6种数据类型要想转换,必须先转换成str,再转换成bytes
    4. str <---> bytes时: 用哪个编码集编码就要用哪个编码集(4种密码本)解码
    5. utf-8的byte类型-->gbk的bytes类型,要先用utf-8(用谁编的就用谁解)对前者进行解码(decode),解完码后再对其(str)用gbk进行编码(encode)
    6. bytes的英文,就是英文,前面来个b; eg: b'hello'
    7. bytes的中文是很多你不认识的字节; eg: b'\xe4\xb8\xad\xe5\x9b\xbd'
    8. python3x 内存用的是 utf-8; python2x内存用的是 ASCII
    9. 不管咋转-凡是见到不认识的(bytes)就解码decode,见到认识的(str)就编码encode

    英文:

    str: 'hello '

    内存中的编码方式: Unicode
    
    表现形式: 'hello'

    bytes :

    内存中的编码方式: 非Unicode
    
    表现形式:b'hello'  #bytes的英文,就是英文,前面来个b

中文:

str: 

    内存中的编码方式: Unicode

    表现形式:'中国'

bytes : 

    内存中的编码方式: 非Unicode  # Utf-8

    表现形式:b'\xe4\xb8\xad\xe5\x9b\xbd'  

转换:

# str ---> bytes

# 中文:
# eg:将s1转换成utf-8的bytes类型  #Unicode ---> 非Unicode
# s1 = '中国'
# b1 = s1.encode('utf-8')  # 编码
# print(b1,type(b1))  # b'\xe4\xb8\xad\xe5\x9b\xbd'  utf-8 中文:3字节

# eg:将s1转化成gbk的bytes类型   #Unicode ---> 非Unicode
# s1 = '中国'
# b1 = s1.encode('gbk')  # 编码  
# print(b1)   # b'\xd6\xd0\xb9\xfa' <class 'bytes'>  gbk 中文:2字节

# 英文:
# eg:将s1转换成utf-8的bytes类型  #Unicode ---> 非Unicode
# s1 = "abc"
# b1 = s1.encode('utf-8')  # 编码
# print(b1,type(b1))  # b'abc'

# eg:将s1转化成gbk的bytes类型   #Unicode ---> 非Unicode
# s1 = "abc"
# b1 = s1.encode('gbk')  # 编码  
# print(b1)   #b'abc'  #bytes的英文表现形式就是英文,前面来个b

# bytes---->str
# eg:将utf-8的bytes类型转换成str
# b1 = b'\xe4\xb8\xad\xe5\x9b\xbd'
# s2 = b1.decode('utf-8')  # 解码
# print(s2)   #中国
# 编码集之间的bytes进行转化时,注意:1.用哪个编码集编就用哪个编码集解;2.2者之间的桥梁是Unicode(eg:str)
# 3.要先用原编码集对其解码,再用要求的编码集进行编码
# gbk <---> uft-8
# gbk的bytes类型 ---> utf-8的bytes类型
b1 = b'\xd6\xd0\xb9\xfa'  #最初是byts类型
s = b1.decode('gbk')  #解码  #桥梁是Unicode(eg:str)
# print(s)
b2 = s.encode('utf-8')  #编码
print(b2)  # b'\xe4\xb8\xad\xe5\x9b\xbd'  #最终也是byts类型

或:
b1 = b'\xd6\xd0\xb9\xfa'
b_utf-8 = b1.decode("gbk").encode("utf-8")
print(b_utf-8)

# utf-8 --> gbk
# utf-8的bytes类型 ---> gbk的bytes类型
b1 = b'\xe4\xb8\xad\xe5\x9b\xbd' 
b_gbk = b1.decode('utf-8').encode('gbk')  #先用utf-8解码(因为一开始是utf-8的bytes类型),再用gbk对其(Unicode的str)编码

3. 重点内容

  • 数据类型的补充: list(sort,revrse,列表的相加,乘,循环问题),dict (update 循环问题) ***
  • 编码的进阶:
    • bytes为什么存在?
    • str --->bytes(Unicode ---> 非Unicode)
    • gbk <-----> utf-8

转载于:https://www.cnblogs.com/wanshizidiao/p/11009667.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

基础数据类型的补充,编码的进阶,基础数据类型之间的转换 的相关文章

  • FTP连接不上的解决方法

    1 注意内网IP和外网IP 2 检查ftp服务是否启动 xff08 面板首页即可看到 xff09 3 检查防火墙20端口 ftp 21端口及被动端口39000 40000是否放行 xff08 如是腾讯云 阿里云等还需检查安全组 xff09
  • Arduino和C51开发OLED显示屏

    技术 xff1a 51单片机 Arduino OLED显示屏 U8glib 概述 OLED显示屏常常用作为智能产品的显示设备 xff0c 本文简单介绍OLED显示屏的使用方法 详细 代码下载 xff1a http www demodashi
  • mac 查看 本地网络代理

    networksetup listallnetworkservices 转载于 https www cnblogs com yshuai p 7813258 html
  • 常用的ROS命令

    在这里记一下 xff0c 以免以后忘记了 打开ros master xff1a roscore 查看topic列表 xff1a rostopic list v 打印topic内容 xff1a rostopic echo topic 将bag
  • platform下的js分析_2

    目录 主要包含 url js utils js requiring frame js attribute js CCMacro js CCSys js CCScreen js CCVisibleRect js callbacks invok
  • 重学前端学习笔记(六)--JavaScript类型有哪些你不知道的细节?

    笔记说明 重学前端是程劭非 xff08 winter xff09 前手机淘宝前端负责人 在极客时间开的一个专栏 xff0c 每天10分钟 xff0c 重构你的前端知识体系 xff0c 笔者主要整理学习过程的一些要点笔记以及感悟 xff0c
  • 用nvm安装node后,发现npm下载总是失败的解决办法

    用nvm安装node后 xff0c 发现npm下载总是失败的解决办法 执行安装命令如下出现npm下载失败 xff0c 尝试多次都不成功 xff1a C windows system32 gt nvm install 14 17 3 Down
  • OpenStack —— DevStack一键自动化安装

    一 DevStack介绍 Devstack 目前是支持Ubuntu16 04和CentOS 7 xff0c 而且Devstack官方建议使用Ubuntu16 04 xff0c 所以我们使用Ubuntu 16 04进行安装 默认无论是Devs
  • 树莓派3b+安装

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 一 贴散热片 xff1a 背面一片 xff0c 正面两篇 二 系统安装 xff1a 1 使用SD Formatter格式化SD卡 2 使用Win32DiskImager写入
  • Amap地图轨迹

    最近在做运动相关的项目 xff0c 需要运动轨迹 xff0c 接了一下Google xff0c 头一天还能获取Location xff0c 之后就没法用了 xff0c 所以换成高德 xff0c 高德的地图包Amap 使用高德地图定位Loca
  • 实现一个最小的 CSS 响应式布局系统

    阳光里她在院子中央晾晒着衣裳 在四季的风中她散着头发安慰着时光 赵雷 南方姑娘 响应式布局系统 xff0c 在现在流行的 CSS 框架中已经非常常见了 它主要由容器类和约定一行列数的栅格系统组成 xff0c 组成了一个框架的骨架 在流行的前
  • 写了一个拖动排序插件

    drag js drag js是一款拖动排序插件 xff0c 适配pc端和手机端 demo地址 tls1234 github io drag html 结构 lt ul class 61 34 item group 34 gt lt li
  • 关于工程效能的思考

    继阿里大中台之后 xff0c 现在的科技公司大多有一支致力于提升公司研发效率和沟通协作的工程效能团队 xff0c 作为这样团队的一员 xff0c 却看到愿景和现实激烈碰撞 xff0c 不禁有如下思考 效率的提升并不能减少工作时长 就拿前端研
  • May-周记(1)

    1 封装一个ajax span class hljs comment 封装一个ajax原生写法 span span class hljs function span class hljs keyword function span span
  • 程序员从阿里、京东、美团…面试回来,这些面试题你都会吗?

    面试 xff0c 难还是不难 xff1f 最终结果好还是不好 xff1f 取决于面试者的底蕴 xff08 气场 43 技能 xff09 心态和认知以及沟通技巧 而一些主流的大型互联网公司面试 xff08 阿里巴巴 京东 美团 滴滴 xff0
  • js深拷贝和浅拷贝

    数组的深浅拷贝 浅拷贝 var arr 61 span class hljs string 34 One 34 span span class hljs string 34 Two 34 span span class hljs strin
  • OpenGL/OpenGL ES入门:纹理初探 - 常用API解析

    系列推荐文章 xff1a OpenGL OpenGL ES入门 xff1a 图形API以及专业名词解析 OpenGL OpenGL ES入门 xff1a 渲染流程以及固定存储着色器 OpenGL OpenGL ES入门 xff1a 图像渲染
  • 获取hadoop集群资源信息

    根据hadoop提供的restful接口获取 http hadoop apache org docs stable gt YARN REST APIs gt Resource Manager 1 获取每个node的信息 import url
  • java版电子商务spring cloud分布式微服务b2b2c社交电商 (八)springboot整合mongodb

    电子商务社交平台源码请加企鹅求求 xff1a 三五三六二四七二五九 准备工作 安装 MongoDBjdk 1 8maven 3 0idea 环境依赖 在pom文件引入spring boot starter data mongodb依赖 xf
  • 金丝雀发布、滚动发布、蓝绿发布到底有什么差别?关键点是什么?

    为什么80 的码农都做不了架构师 xff1f gt gt gt 根据 2017 年的 DevOps 发展报告 xff0c 高效能组织和低效能组织在软件交付的效率上有数量级上的差异 技术组织的软件交付能力是一种综合能力 xff0c 涉及众多环

随机推荐

  • MongoDB的无缝集成,重拾后端之Spring Boot

    MongoDB是什么 xff1f MongoDB是一个NoSQL数据库 xff0c 是NoSQL中的一个分支 xff1a 文档数据库 和传统的关系型数据库比如Oracle SQLServer和MySQL等有很大的不同 传统的关系型数据库 x
  • 关于区块链智能合约的真相

    2019独角兽企业重金招聘Python工程师标准 gt gt gt title 关于智能合约的真相 就像 区块链 xff0c AI 和 云 这样的词语一样 xff0c 智能合约 也是那些得到大量炒作的短语之一 毕竟 xff0c 没有什么比不
  • 访问者模式

    2019独角兽企业重金招聘Python工程师标准 gt gt gt https blog csdn net jason0539 article details 45146271 转载于 https my oschina net u 2511
  • zip不是内部或外部命令,也不是可执行程序”详细解决办法

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 书中第11章学习实例 xff1a 将文件备份成一个zip文件 xff08 python实现 xff09 书中源码 xff08 文件目录是自己新建文件夹的路径 xff0c 和
  • Struts2学习:HelloWorld

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 项目结构 xff1a 1 用IDEA新建一个SpringBoot 43 Maven的项目 2 新建的项目是没有webapp WEB INF 与web xml文件的 xff0
  • 泛型--继承泛型

    2019独角兽企业重金招聘Python工程师标准 gt gt gt package com atguigu javase generic import java util ArrayList import java util List im
  • springboot之读取配置文件

    1 propertie配置读取数据 通过value取配置文件中的数据 64 Component 64 PropertySource value 61 34 config db config properties 34 public clas
  • Kotlin与Java互操作

    1 xff0c Kotlin 调用Java import java util fun demo source List lt Int gt val list 61 ArrayList lt Int gt for item in source
  • Oracle基础和进阶笔记第二篇

    Oracle的中级操作部分 六 索引1 索引的特点2 索引的创建 七 视图1 普通视图2 物化视图 八 序列1 序列创建语法 九 触发器1 触发器的语法2 替代触发器3 系统触发器 十 游标1 一般游标创建2 静态隐式游标3 静态显示游标4
  • Python 工匠:使用装饰器的技巧。

    作者 xff1a piglei xff08 本文来自作者投稿 xff09 前言 装饰器 xff08 Decorator xff09 是 Python 里的一种特殊工具 xff0c 它为我们提供了一种在函数外部修改函数的灵活能力 它有点像一顶
  • AI听6秒语音就能知道你的长相

    声音可以暴露很多讯息 xff0c 麻省理工学院 xff08 MIT xff09 最近一项研究发现 xff0c 经过训练的 AI 不仅能从声音辨别出性别 年龄和种族 xff0c 甚至能猜出这人大概长什么样子 这些 秘密 都藏不住了 研究人员用
  • selenium编程01-简单163邮箱登陆登出_模块化

    from selenium import webdriver from time import sleep class Login def init self driver self driver 61 driver def login s
  • 163music 反爬分析

    网易163 音乐的 mp3下载 view source https music 163 com playlist id 61 924680166 这个是网页源代码 链接 中间的 拿不到具体的数据 所以获取页面的时候 要去除 http mus
  • 二层链路聚合实验

    交换机1 xff1a ystem view vlan 10 vlan 20 qu interface range g1 0 1 to g1 0 2 port link type access port access vlan 10 qu i
  • plsql

    1 添加快捷键设置 摘抄自https www cnblogs com guangxiang p 9487132 html 汉化版 xff1a 工具 首选项 用户界面 编辑器 自动替换 定义文件 英文版 xff1a Tools gt Perf
  • 如何利用python制作微信好友头像照片墙?

    这个不难 xff0c 主要用到itchat和pillow这2个库 xff0c 其中itchat用于获取微信好友头像照片 xff0c pillow用于拼接头像生成一个照片墙 xff0c 下面我简单介绍一下实现过程 xff0c 代码量不多 xf
  • 软件需求工程与UML建模第二周工作总结

    项目范围 xff1a 1 能够实现仅弹道技能的躲避训练和带有技能发射主体的技能躲避训练 2 要能够玩家自由选择角色进行训练 3 要能够实现包含技能躲避 1v1对线训练等多模式选择的训练方式 4 要能够快捷进行多次练习 xff0c 我们计划加
  • 阻塞和非阻塞~

    很清楚 先记下 https www zhihu com question 19732473 answer 14413599 转载于 https www cnblogs com Mickey697 p 10863679 html
  • vnc利用ps命令查看所有DISPLAY

    ps aux grep vnc 使用该命令可以看到详细的vnc进程和使用的DISPLAY和DISPLAY的分辨率
  • 基础数据类型的补充,编码的进阶,基础数据类型之间的转换

    1 内容总览 基础数据类型的补充数据类型之间的转换 其他数据类型转成bool值为False的情况编码的进阶 2 具体内容 数据类型的补充 str 6个 code str xff1a 补充的方法练习一遍就行 6个 s1 61 39 taiBA