Coleção de tipos de dados básicos e codificação de caracteres

Uma coleção de

1. Definições

  {} A pluralidade de elementos espaçados por vírgulas, satisfaz elemento as seguintes condições:

    a, elementos dentro do conjunto de tipo imutável

      imprimir (set ([1,1,1,1,1,1, [11.222]]) # erro

    b, a recolha de elementos não ordenada

    C, dentro do conjunto de elementos não pode ser repetido, um elemento repetição contar apenas

2, embutido método

Operadores relacionais ============== =============

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

  a, no cruzamento: dois conjuntos dos mesmos elementos

    res = friends1 & friends2

  b, e levar o set / Colecção: Todos os elementos do conjunto de dois

    res = friends1 | friends2

  C, tendo o conjunto de diferença: um conjunto de elementos comuns na extracção, a diferença é restante conjunto

    friends1 的: res = friends1 - friends2

    friends2 的: res = friends2 - friends1

  d, diferença simétrica: um único conjunto de dois elementos, isto é, os elementos comuns para remover

    res = friends1 ^ friends2

  e, subconjunto pai

    1, S1: {1,2,3}

       s2: {1,2,4} relacionamento # inclusão não existe

    imprimir (s1> s2) #False

    2, apenas quando o conjunto de s1 s2 subordinado, S1 e S2 conjunto para se tornar um pai

      Quando s1 = s2, o subconjunto pai mútuo

================ desduplicação ===============

  Apenas para o tipo imutável, não pode garantir que a ordem original

l = [
    { 'Nome': 'lili', 'idade': 18, 'sexo': 'masculino'},
    { 'Nome': 'jack', 'idade': 73, 'sexo': 'masculino'},
    { 'Nome': 'tom', 'idade': 20, 'sexo': 'fêmea'},
    { 'Nome': 'lili', 'idade': 18, 'sexo': 'masculino'},
    { 'Nome': 'lili', 'idade': 18, 'sexo': 'masculino'},
]
new_l = []
para dic em l:
    se dic não em new_l:
        new_l.append (DIC)

imprimir (new_l)
 

Outros built-in método de ####

s = {1,2,3}
Você precisa ter built-in método
  1: descarte
    s.discard (4) # remover um elemento não existe nada
    impressão (s)
    s.remove (4) # remover um elemento não existe erro
  2: atualização
    s.update ({1,3,5})
    impressão (s)
  3: pop
    res = s.pop ()
    impressão (res)
  4: add
    s.add (4)
      impressão (s)
 

codificação de dois caracteres

Detalhes, consulte: https: //zhuanlan.zhihu.com/p/108805502

## análise

  x = "上"
                    memória
A tradução ----- ------- "0101010
On "---- traduzindo" ----- 0101010
 
mesa de código de caracteres é uma tabela de correspondência entre letras e números
 
 
um 00-
b-01
C-10
d-11
 
tabela ASCII:
    1, suporta apenas Inglês string
    2, 8-bit número binário correspondente a uma cadeia Inglês
 
GBK 表:
    1, suporta caracteres em inglês, caracteres chineses
    2,
    8bit (8 bits = 1Bytes) número binário correspondente a uma cadeia Inglês
    16bit (16bit = 2Bytes) corresponde a uma seqüência de números binários chinês
 
 

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)

Acho que você gosta

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