Colección de tipos de datos básicos y codificación de caracteres

Una colección de

1. Definiciones

  {} La pluralidad de elementos separados por comas, satisface elemento las siguientes condiciones:

    a, los elementos dentro del conjunto de tipo inmutable

      imprimir (conjunto ([1,1,1,1,1,1, [11222]]) # error

    b, la colección no ordenada de elementos

    C, dentro del conjunto de elementos no se puede repetir, un elemento de repetición única cuenta

2, método integrado

Los operadores relacionales ============== =============

friends1 = { "cero", "Kevin", "Jason", "Egon"}
friends2 = { "Jy", "Ricky", "Jason", "Egon"}

  a, en la intersección: dos conjuntos de los mismos elementos

    res = friends1 y friends2

  b, y llevarse el set / Colección: Todos los elementos del juego de dos

    res = friends1 | friends2

  C, teniendo el conjunto de diferencia: un conjunto de elementos comunes en la extracción, la diferencia restante es conjunto

    friends1 的: res = friends1 - friends2

    friends2 的: res = friends2 - friends1

  d, diferencia simétrica: un conjunto único de dos elementos, es decir, los elementos comunes para eliminar

    res = friends1 ^ friends2

  E, subgrupo de los padres

    1, S1: {1,2,3}

       S2: {1,2,4} # relación de inclusión no existe

    imprimir (s1> s2) #False

    2, sólo cuando el conjunto de S1 S2 subordinado, s1 y s2 conjunto para convertirse en un padre

      Cuando s1 = s2, el subconjunto de los padres mutua

================ deduplicación ===============

  Sólo para el tipo inmutable, no puede garantizar que la orden original

L = [
    { 'Nombre': 'Lili', 'edad': 18, 'sexo': 'masculina'},
    { 'Nombre': 'jack', 'edad': 73, 'sexo': 'masculina'},
    { 'Nombre': 'Tom', 'edad': 20, 'sexo': 'hembra'},
    { 'Nombre': 'Lili', 'edad': 18, 'sexo': 'masculina'},
    { 'Nombre': 'Lili', 'edad': 18, 'sexo': 'masculina'},
]
new_l = []
para DIC en l:
    si no en DIC new_l:
        new_l.append (DIC)

imprimir (new_l)
 

Otro método integrado ####

s = {1,2,3}
Es necesario haber incorporado en el método
  1: descarte
    s.discard (4) # elimina no existe un elemento no hacer nada
    huellas dactilares)
    s.remove (4) # eliminar un elemento no existe error
  2: actualización
    s.update ({1,3,5})
    huellas dactilares)
  3: pop
    res = s.pop ()
    imprimir (res)
  4: add
    s.add (4)
      huellas dactilares)
 

De dos caracteres de codificación

Detalles, se refieren a: https: //zhuanlan.zhihu.com/p/108805502

## análisis

  x = "上"
                    memoria
La traducción ----- ------- "0101010
En "---- traducción" ----- 0101010
 
tabla de códigos de caracteres es una tabla de correspondencia entre caracteres y números
 
 
A-00
b-01
c-10
d-11
 
tabla ASCII:
    1, sólo es compatible con cadena de Inglés
    2, 8 bits número binario correspondiente a una cadena de Inglés
 
GBK 表:
    1, es compatible con caracteres del alfabeto inglés, los caracteres chinos
    2,
    8 bits (8 bits = 1Bytes) número binario correspondiente a una cadena de Inglés
    16 bits (16 bits = 2 bytes) corresponde a una serie de números binarios china
 
 

unicode(内存中统一使用unicode):

    1、
        兼容万国字符
        与万国字符都有对应关系
    2、
    采用16位(16bit=2Bytes)二进制数对应一个中文字符串
    个别生僻会采用4Bytes、8Bytes
 
 
    unicode表:
                          内存
        人类的字符---------unicode格式的数字----------
                             |                     |
                             |                     |
                             |
                            硬盘                    |
                             |
                             |                     |
                             |                     |
                        GBK格式的二进制       Shift-JIS格式的二进制
 
        老的字符编码都可以转换成unicode,但是不能通过unicode互转
 
 
utf-8:
    英文->1Bytes
    汉字->3Bytes
 
 
 

结论:

    1、内存固定使用unicode,我们可以改变的是存入硬盘采用格式
        英文+汉字-》unicode-》gbk
        英文+日文-》unicode-》shift-jis
        万国字符》-unicode-》utf-8
 
    2、文本文件存取乱码问题
        存乱了:解决方法是,编码格式应该设置成支持文件内字符串的格式
        取乱了:解决方法是,文件是以什么编码格式存如硬盘的,就应该以什么编码格式读入内存
 
 
 

其他内置方法
s={1,2,3}
需要掌握的内置方法1discard
s.discard(4) # 删除元素不存在do nothing
print(s)
s.remove(4) # 删除元素不存在则报错


需要掌握的内置方法2update
s.update({1,3,5})
print(s)

需要掌握的内置方法3pop
res=s.pop()
print(res)

需要掌握的内置方法4add
s.add(4)
print(s)

Supongo que te gusta

Origin www.cnblogs.com/NevMore/p/12482319.html
Recomendado
Clasificación