How to make a range with alphabet letters in python?

6

In PHP, when we want to do array of letters of the alphabet, we can use the function range .

Example in PHP:

$letras = range('a', 'z');

Result:

Array (
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
    [5] => f
    [6] => g
    [7] => h
    [8] => i
    [9] => j
    [10] => k
    [11] => l
    [12] => m
    [13] => n
    [14] => o
    [15] => p
    [16] => q
    [17] => r
    [18] => s
    [19] => t
    [20] => u
    [21] => v
    [22] => w
    [23] => x
    [24] => y
    [25] => z )

And it's also possible to do this through for

for ($a = 'a'; $a != 'aa'; $a++) echo $a;

Result:

  

abcdefghijklmnopqrstuvwxyz

But in Python, when I try to do this through the function range , an error is returned.

Python example:

 range('a', 'z');
  

Traceback (most recent call last): File "", line 1, in    TypeError: range () integer end argument expected, got str.

So the question is: In the simplest possible way, how could you generate a list of alphabet letters in python ?

    
asked by anonymous 13.08.2015 / 15:25

2 answers

11
import string
a = list(string.ascii_lowercase)

print a

Result:

  

['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l '' '', '', '', '', '', '', '', '', '', '', '', '', 'y', 'z']

Source: StackOverflow - Alphabet range python

If you do not want the entire alphabet you can do this:

import string
a = list(string.ascii_lowercase[:14])

print a

Or even using range() and ord() :

a =[]

# list de a-n
for i in range(ord('a'), ord('n')+1):
    a.append(chr(i))

print a

Result for both cases:

  

['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l ',' m ',' n ']

Source: StackOverflow - Python: how to print range az?

    
13.08.2015 / 15:40
0

I like to use range with ord , as already mentioned

#python3.*
abc=[]
for k in range(ord('a'), ord('z')+1):
  abc.append(chr(k))
print(abc)
    
14.08.2015 / 21:05