- str- while, raw_input len, , :
def first_alpha():
s = raw_input()
mn, curr = s[0], s[0]
i = 1
while i < len(s):
if s[i] == " ":
if curr < mn:
mn = curr
curr = s[i+1]
i += 1
return mn if curr > mn else curr
, , , .
In [5]: first_alpha()
this is a sentence
Out[5]: 'a'
In [6]: first_alpha()
lowest char is trailing a
Out[6]: 'a'
In [7]: first_alpha()
lowest char is upper A
Out[7]: 'A'
, min(word[0] for word in s.split()) , .
:
def first_alpha():
s = raw_input()
mn, curr = "{", "{"
i = 0
ln = len(s) if s[-1] != " " else len(s) - 1
while i < ln:
if s[i] == " ":
if curr <= mn:
mn = curr
ch = s[i+1]
if "a" <= ch <= "z" or "A" <= ch <= "Z":
curr = ch
i += 1
return mn if curr > mn else curr
:
In [29]: first_alpha()
this is sentence where the lowest is ! but we return a
Out[29]: 'a'
In [30]: first_alpha()
lots of spaces and but we return a
Out[30]: 'a'
, , }, ,