Mas*_*lor 2 python string pangram
我正在尝试编写一个python程序,检查给定的字符串是否为pangram - 包含字母表中的所有字母.
因此,"We promptly judged antique ivory buckles for the next prize"应该返回True任何不包含字母表的每个字母的字符串至少一次返回False.
我相信我应该使用RegEx这个,但我不知道如何.它看起来应该类似于:
import sys
import re
input_string_array = sys.stdin.readlines()
input_string = input_string_array[0]
if (re.search('string contains every letter of the alphabet',input_string):
return True
else:
return False
Run Code Online (Sandbox Code Playgroud)
Mar*_*ers 12
这不是我用正则表达式解决的问题,不是.创建一组小写字符串并检查它是否是字母表字母的超集:
import string
alphabet = set(string.ascii_lowercase)
def ispangram(input_string):
return set(input_string.lower()) >= alphabet
Run Code Online (Sandbox Code Playgroud)
只有当字母表中的每个字母都在从输入文本创建的集合中时,它才会成为超集; 通过使用超集而不是相等,除了(ASCII)字母外,还允许使用标点符号,数字和空格.
演示:
>>> import string
>>> alphabet = set(string.ascii_lowercase)
>>> input_string = 'We promptly judged antique ivory buckles for the next prize'
>>> set(input_string.lower()) >= alphabet
True
>>> set(input_string[:15].lower()) >= alphabet
False
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7378 次 |
| 最近记录: |