Declaração condicional
- Não adicione ()
- Adicione no final:
- elif else e se usado em pares
- Omitir condição de julgamento
- String: a string vazia é False e o restante é True
- int: 0 é False, o resto é True
- Bool: True é True, False é False
- lista / tupla / dict / set: iterável está vazio e analisado como False, o resto é True
- Objeto: nenhum resolve para False, o resto é True
Declaração de loop
- A estrutura de dados iterável pode ser percorrida da seguinte maneira
- para o item em <iterable>:
- ...
- Passagem do dicionário
1 d = { ' nome ' : ' jason ' , ' dn ' : ' 2000-01-01 ' , ' gender ' : ' male ' } 2 para k em d: 3 print (k) 4 print ( " " ) 5 para v em valores d (): 6 impressão (v) 7 impressão ( " ") 8 para k, v em d.items (): 9 print ( ' chave: {}, valor: {} '. formato (k, v))
- Transversal por índice
1 # 方法 1 2 l = [1,2,3,4,5,6,7 ] 3 para o índice no intervalo (0, len (l)): 4 se o índice <5 : 5 for impresso (l [index]) 6 7 # 方法 2 8 l = [1,2,3,4,5,6,7 ] 9 para o índice, item no enumerado (l): 10 se o índice <5 : 11 for impresso (item)
- continuar, quebrar
1 # selecionados preço é inferior a 1000, ea cor não é vermelho todos os "produtos - Color" Composição 2 # não usado Continuar 3. Name_price = { ' book_1 ' : 120, ' book_2 ' : 500, ' book_3 ' : 2000, ' book_4 ' : 200 } 4 name_color = { ' book_1 ' : [ ' vermelho ' , ' azul ' ], ' book_2 ' : [ ' verde ' , ' azul '],' book_3 ' : [ ' red ' , ' blue ' ]} 5 6 para nome, preço em name_price.items (): 7 se preço <1000 : 8 se nome em name_color: 9 para cor em name_color [nome]: 10 se color! = ' red ' : 11 print ( ' name: {}, color: {} ' .format (nome, cor)) 12 mais : 13 print ( ' name: {}, color: {} ' .format (name, ' None ' )) 14 15 # 使用 continue 16 pelo nome, preço em name_price.items (): 17 se price> = 1000 : 18 continue 19 se o nome não estiver em name_color: 20 print ( ' name: {}, color: {} ' .format (name, ' None ' )) 21 continue 22 para a corem name_color [name]: 23 se color == ' red ' : 24 continue 25 print ( ' name: {}, color: {} ' .format (nome, cor))
- Eficiência
- for: range () é escrito em linguagem C, com alta eficiência
- while: i + = 1 cria a criação e exclusão de objetos (equivalente a i = new int (i + 1))
- Escrita simplificada
1 # divididos por vírgulas palavras, o primeiro caractere nulo é removido, filtrada comprimento de palavra menor ou igual a 5, e retorna uma lista de palavras que consistem em 2 text = ' Hoje, IS, o Sunday ' . 3 text_list = [s.strip () para S em texto .split ( ' , ' ) se len (s.strip ())> = 5 ] 4 print (lista_de_texto)
1 # 计算 函数 值 y = 2 * | x | + 5 2 # expressão1 se condição mais expressão2 para item em iterável 3 # 4 于: 4 # para item em iterável: 5 # se condição: 6 # expressão1 7 # outra coisa: 8 # expressão2 9 x = [-1,0, 1,2,3,4 ] 10 y = [valor * 2 + 5 se valor> 0 else -value * 2 + 5 para valor em x] 11 print (y)