要计算列表中每个单词的长度,并且不计标点符号,可以使用 Python 编写一个简单的脚本。以下是一个示例代码,展示了如何实现这一点。
import string
def remove_punctuation(word):
return word.translate(str.maketrans('', '', string.punctuation))
def word_lengths(words):
lengths = []
for word in words:
clean_word = remove_punctuation(word)
lengths.append(len(clean_word))
return lengths
# 示例列表
words = ["hello,", "world!", "this", "is", "a", "test."]
# 计算每个单词的长度(不计标点符号)
lengths = word_lengths(words)
# 打印结果
for word, length in zip(words, lengths):
print(f"'{word}' 的长度(不计标点符号)是: {length}")
string
模块:string
模块包含了常见的字符串操作和常量,例如 string.punctuation
,它包含所有的标点符号。remove_punctuation
函数:这个函数使用 str.translate
方法来移除单词中的标点符号。str.maketrans('', '', string.punctuation)
创建了一个翻译表,将所有标点符号映射到 None
,从而移除它们。word_lengths
函数:这个函数接受一个单词列表,移除每个单词中的标点符号,并计算其长度。结果存储在一个列表中并返回。word_lengths
函数计算每个单词的长度(不计标点符号)。zip
函数将原始单词和计算的长度配对,并打印结果。运行上述代码将输出:
'hello,' 的长度(不计标点符号)是: 5
'world!' 的长度(不计标点符号)是: 5
'this' 的长度(不计标点符号)是: 4
'is' 的长度(不计标点符号)是: 2
'a' 的长度(不计标点符号)是: 1
'test.' 的长度(不计标点符号)是: 4
这样,你就可以计算列表中每个单词的长度,并且不计标点符号。
领取专属 10元无门槛券
手把手带您无忧上云