在 python3 中打印每两个字母对

Print every two letters pairs in python3

我是 Python 的新手,我被困在一个练习中,该练习告诉我提供一个脚本,打印每对可能的两个字母,仅小写,逐行,按字母顺序排列,然后是我能做的最接近的事情

import string 
x=string.ascii_lowercase
y=list(x)
for i in y:
    print(i,end='')
    for g in y:
        print(g)

试试这个代码,它将按字母顺序打印

你已经学习了 ASCII 码,所以它的作用是循环遍历 97 到 122,其中包含所有字母,然后将它们连接起来。

for firstchar in range(97, 123):
    for secondchar in range(97, 123):
          print(chr(firstchar) + chr(secondchar))

你只打印每对的第一个字母一次。

from string import ascii_lowercase as lowercase_letters

for first_letter in lowercase_letters:
    for second_letter in lowercase_letters:
        print(first_letter + second_letter)

另外:

  • 您不需要将字符串转换为列表,您可以循环遍历一个字符串就好了。事实上,这就是 list(some_string) 的工作原理!
  • 我使用了更易读的变量名。
  • 使用from ... import意味着您不需要额外的赋值。

你需要在第二个for循环中打印第i个字母

import string 
x=string.ascii_lowercase
   
for i in x:
    for g in x:
        print(i,g)

所以程序将遍历第一个循环中的每个字母,然后将整个字母表一个一个地打印出来,作为第二个循环中的第二个字母

word_list = ['WELCOME']
double_letters = []
for word in word_list:
    for i,j in enumerate(word):
        x = word[i:i+2]
        if len(x) == 2:
            double_letters.append(x)
print(double_letters)

如果给你一个单词列表。那么这是一种可能的方式

如果使用字符串模块,任务非常简单:

import string

for firstchar in string.ascii_lowercase:
    for secondchar in string.ascii_lowercase:
        print(firstchar + secondchar)