我有一个编写代码来分配字符串中的单词的作业。我还没学会分裂,所以我不能用它。我只能使用函数,循环和条件。他故意在一个字符串中添加了三个额外的空格,我必须弄清楚如何将它作为一个来处理它。我被卡住了。救命啊!
def wordCount(myString):
try:
spaceCount = 0
char = ""
for i in myString:
char += i
if char == " ":
spaceCount == 1
pass
elif char == " ":
spaceCount += 1
return spaceCount+1
except:
return "Not a string"
print("Word Count:", wordCount("Four words are here!"))
print("Word Count:", wordCount("Hi David"))
print("Word Count:", wordCount(5))
print("Word Count:", wordCount(5.1))
print("Word Count:", wordCount(True))
答案 0 :(得分:1)
这种作品:
def wordCount(myString):
try:
words = 0
word = ''
for l in myString :
if ( l == ' ' and word != '' ) or ( l == myString[-1] and l != ' ' ) :
words += 1
word = ''
elif l != ' ' :
word += l
return words
except Exception as ex :
return "Not a string"
print("Word Count:", wordCount("Four words are here!"))
print("Word Count:", wordCount("Hi David"))
print("Word Count:", wordCount(5))
print("Word Count:", wordCount(5.1))
print("Word Count:", wordCount(True))
结果:
'Word Count:', 4
'Word Count:', 2
'Word Count:', 'Not a string'
'Word Count:', 'Not a string'
'Word Count:', 'Not a string'
答案 1 :(得分:0)
def wordCount(s):
try:
s=s.strip()
count = 1
for i,v in enumerate(s):
#scan your string in pair of 2 chars. If there's only one leading space, add word count by 1.
if (len(s[i:i+2]) - len(s[i:i+2].lstrip()) == 1):
count+=1
return count
except:
return "Not a string"
print("Word Count:", wordCount("Four words are here! "))
print("Word Count:", wordCount("Hi David"))
print("Word Count:", wordCount(5))
print("Word Count:", wordCount(5.1))
print("Word Count:", wordCount(True))