用Python计算一个句子的平均字长
在Python中处理字符串时,有时你可能需要知道一个句子的平均字长。一个句子的平均词长等于所有字符的长度与所有单词的长度之和。
本教程将教你在Python中计算一个句子的平均字长。
使用split()
,sum()
, 和len()
在Python中计算一个句子的平均字长
计算一个句子中的每个词并找出平均词长是不可能的。但是你可以把它分割成一个列表并应用这个函数。
Python中的split()
方法将一个字符串分割成一个列表,每个词都是一个列表项。
将字符串分割成一个列表后,使用len()
函数来获得平均字长。len()
函数提供了一个列表中的项目数。
下面的例子计算了一个给定句子中的平均字长。
sentence = "Welcome to DelftStack tutorials"
words = sentence.split()
avg = sum(len(word) for word in words) / len(words)
print("Average word length is", avg)
输出:
Average word length is 7.0
sum()
函数得到所有字符的长度之和。
使用split()
,sum()
,map()
, 和len()
在Python中计算一个句子的平均字长
这个方法和上面一样,但这里我们使用map()
函数来获得字符的长度。map()
函数可以让你将一个指定的函数应用于一个可迭代的所有项目。
正如你所看到的,它取代了第一个方法中的for
循环。
sentence = "Welcome to DelftStack tutorials"
words = sentence.split()
average = sum(map(len, words)) / len(words)
print("Average word length is", average)
输出:
Average word length is 7.0
使用split()
,len()
, 和join()
在Python中计算一个句子的平均字长
join()
方法将一个迭代器 (list, tuple, string) 中的所有项目连接成一个字符串。在这个方法中,我们使用split()
,len()
, 和join()
来计算一个句子的平均字长。
sentence = "Welcome to DelftStack tutorials"
words=sentence.split()
single=''.join(words)
average=len(single)/len(words)
print("Average word length is", average)
在这里,我们把句子分成一个列表,并把它保存在一个变量中,words
。接下来,我们使用join()
方法将列表中的项目与一个空字符串连接起来。
其结果是WelcometoDelftStacktutorials
,并保存在一个变量single
中。然后我们通过用single
的长度除以words
的长度来计算平均字长。
输出:
Average word length is 7.0
使用len()
和replace()
来计算Python中句子的平均字长
Python中的replace()
方法是用一个新的文本/字符替换一个指定的文本/字符。
在这种情况下,我们用一个空字符串替换空白处。并且我们使用len()
函数计算出一个句子中的字符数。
接下来,我们用结果除以列表对象中的项目数,得到一个句子的平均字长。
sentence = "Welcome to DelftStack tutorials"
average = len(sentence.replace(' ','')) / len(sentence.split())
print("Average word length is", average)
输出:
Average word length is 7.0
现在你应该知道如何使用split()
命令来计算一个句子的平均字长。其所有方法背后的逻辑都很相似。
你也已经学会了使用len()
和replace()
来确定平均字长。我们希望你喜欢学习这个简单的Python程序。