Estranho que, para uma pergunta de "iniciante", você ainda possa obter uma variedade de respostas. O fato de eu poder digitar não significa que eu possa "python", eu realmente gosto da resposta do gnibbler sobre coisas-bagunçadas. Obrigado a todos por suas respostas e - mantenha as coisas simples, um agradecimento especial ao gnibbler.
hhh
2
Não é uma variedade selvagem de respostas. São duas variedades. Um usa rangee chr()e outro as listas prontas string, nas quais muitas pessoas nem pensariam.
Acredito que string.ascii_lowercase já funcione no python 2.x, então, para ter certeza, use sempre ascii_lowercase.
johk95
1
@ johk95, na verdade str.lowercasedepende da localidade, então não foi a melhor escolha em primeiro lugar. Substituí-o na minha resposta
John La Rooy
Olá, poderia me dizer se isso está disponível apenas em inglês? não posso obter o mesmo para outras línguas também? Obrigado e cumprimentos
Michael Schroter
47
Presumindo que seja um dever de casa ;-) - não há necessidade de invocar bibliotecas etc - provavelmente espera que você use range () com chr / ord, assim:
for i in range(ord('a'), ord('n')+1):print chr(i),
De resto, basta brincar um pouco mais com o intervalo ()
Esta solução usa a tabela ASCII . ordobtém o valor ascii de um personagem e chrvice-versa.
Aplique o que você sabe sobre listas
>>> small_letters = map(chr, range(ord('a'), ord('z')+1))>>> an = small_letters[0:(ord('n')-ord('a')+1)]>>>print(" ".join(an))
a b c d e f g h i j k l m n>>>print(" ".join(small_letters[0::2]))
a c e g i k m o q s u w y>>> s = small_letters[0:(ord('n')-ord('a')+1):2]>>>print(" ".join(s))
a c e g i k m>>> urls =["hello.com/","hej.com/","hallo.com/"]>>>print([x + y for x, y in zip(urls, an)])['hello.com/a','hej.com/b','hallo.com/c']
Bem-vindo ao StackOverflow. Tente explicar mais claramente por que essa é uma resposta completa à pergunta.
Jeroen Heier
Obrigado. Eu gosto de como você constrói isso.
hmacias
2
#1)print" ".join(map(chr, range(ord('a'),ord('n')+1)))#2)print" ".join(map(chr, range(ord('a'),ord('n')+1,2)))#3)
urls =["hello.com/","hej.com/","hallo.com/"]
an = map(chr, range(ord('a'),ord('n')+1))print[ x + y for x,y in zip(urls, an)]
A resposta a esta pergunta é simples, basta fazer uma lista chamada ABC assim:
ABC =['abcdefghijklmnopqrstuvwxyz']
E sempre que precisar se referir a ele, basta fazer:
print ABC[0:9]#prints abcdefghijprint ABC #prints abcdefghijklmnopqrstuvwxyzfor x in range(0,25):if x %2==0:print ABC[x]#prints acegikmoqsuwy (all odd numbered letters)
Também tente isso para quebrar seu dispositivo: D
##Try this and call it AlphabetSoup.py:
ABC =['abcdefghijklmnopqrstuvwxyz']try:whileTrue:for a in ABC:for b in ABC:for c in ABC:for d in ABC:for e in ABC:for f in ABC:print a, b, c, d, e, f,' ',exceptKeyboardInterrupt:pass
Esta é sua segunda pergunta: string.lowercase[ord('a')-97:ord('n')-97:2]porque 97==ord('a')- se você quer aprender um pouco, você deve descobrir o resto sozinho ;-)
Função Zip, explicação completa , a list of tuples, where the i-th tuple contains the i-th element from each of the argument sequences or iterables.[...]construção de retornos é chamada de compreensão de lista , recurso muito legal!
range
echr()
e outro as listas prontasstring
, nas quais muitas pessoas nem pensariam.Respostas:
Para fazer os urls, você poderia usar algo assim
fonte
str.lowercase
depende da localidade, então não foi a melhor escolha em primeiro lugar. Substituí-o na minha respostaPresumindo que seja um dever de casa ;-) - não há necessidade de invocar bibliotecas etc - provavelmente espera que você use range () com chr / ord, assim:
De resto, basta brincar um pouco mais com o intervalo ()
fonte
Dicas:
e
e
fonte
fonte
Obtenha uma lista com os valores desejados
ou
Esta solução usa a tabela ASCII .
ord
obtém o valor ascii de um personagem echr
vice-versa.Aplique o que você sabe sobre listas
fonte
fonte
tuple(string.ascii_lowercase)
e
fonte
Resultado
fonte
fonte
A resposta a esta pergunta é simples, basta fazer uma lista chamada ABC assim:
E sempre que precisar se referir a ele, basta fazer:
Também tente isso para quebrar seu dispositivo: D
fonte
Experimentar:
fonte
Esta é sua segunda pergunta:
string.lowercase[ord('a')-97:ord('n')-97:2]
porque97==ord('a')
- se você quer aprender um pouco, você deve descobrir o resto sozinho ;-)fonte
fonte
Eu espero que isso ajude:
fonte
Sobre a resposta do gnibbler.
Função Zip, explicação completa ,
a list of tuples, where the i-th tuple contains the i-th element from each of the argument sequences or iterables.
[...]
construção de retornos é chamada de compreensão de lista , recurso muito legal!fonte
Outra maneira de fazer isso
Resultado
Como isso difere das outras respostas
enumerate
em conjunto com compreensão de lista e str.formatfonte