作者tnzikom (tnzikom)
看板Python
标题[问题] 比对字串中的母音有几种
时间Fri Nov 3 16:39:00 2017
目前写了判断母音的code如下
word = input()
count = 0
a = e = i = o = u = 0
for num in word.lower():
if num in 'a':
a = 1
elif num in 'e':
e = 1
elif num in 'i':
i = 1
elif num in 'o':
o = 1
elif num in 'u':
u = 1
count = a + e + i + o + u
print(count)
自己觉得这code看起来很笨......想问是不是有更好的写法,
另外也想问for num in word.lower()这行for的运作是怎麽样呢?
知道word.lower()是变小写的意思,
但num in word.lower()的意思看了很久还是不太能理解> <
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.112.25.99
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1509698343.A.F90.html
※ 编辑: tnzikom (140.112.25.99), 11/03/2017 17:09:11
1F:推 Django: for num in word.lower(): if num in 'aeiou': count += 111/03 17:38
2F:→ Django: (请自行排版) 另外你本来的写法是错的,aeiou的值没有累加11/03 17:39
抱歉我打错了!!!是要问有几种母音
3F:推 johnlinvc: import re11/03 17:47
4F:→ johnlinvc: count=len(re.findall("[AEIOU]", word,re.I))11/03 17:48
※ 编辑: tnzikom (140.112.25.99), 11/03/2017 18:29:08
5F:→ NTUGG: str.count(....) 11/03 18:35
6F:推 Yshuan: [ch in word.lower() for ch in 'aeiou'].count(True) 11/03 21:22
7F:→ Yshuan: num in word.lower() #小写的word是否有num变数代表的字母 11/03 21:24
8F:→ bibo9901: len( set("aeiou") & set(word) ) 11/03 22:44
9F:→ goldflower: word='ptT is Back' for num in word作用如同 11/03 23:27
10F:→ goldflower: for num in ['p','t','t',' ','i','s',' ',......] 11/03 23:28
11F:→ lance8537: 感觉好leetcode 11/05 11:08