구분해서 반환하기
lst = ['u', '6', 'd', '1', 'i', 'w', '6', 's', 't', '4', 'a', '6', 'g', '1', '2', 'w', '8', 'o', '2', '0']
# 원하는 return값 [3.6, 'udiwstagwo']
def mean(lst):
return [sum(int(n) for n in lst if n.isdigit())/10.0, "".join(c for c in lst if c.isalpha())]
가장 작은 두 수를 더하자
# 빠르고 쉽지만 뭔가 켕긴다.
def sum_two_smallest_numbers(numbers):
return sum(sorted(numbers)[:2])
#method1
def sum_two_smallest_numbers(numbers):
low1 = numbers[0]
low2 = numbers[1]
for i in numbers:
if i < low1:
low1 = i
for i in numbers:
if i < low2:
if i != low1:
low2 = i
return low1 + low2
자릿수의 합
#원시적인 방법. digital root는 못 구함.
def digital_root(n):
A=str(n)
j=len(str(n))-1
for i in j:
sum+=A(i)
return sum;
#정말로 자릿수만 더하기
def digital_root(n):
while n >= 10:
n = sum(int(digit) for digit in str(n))
return n
#digital_root를 구하는 가장 쉬운 방법.
def digital_root(n):
return n%9 or n and 8
Disemvowel
#한 줄
def disemvowel(string):
return "".join(c for c in string if c.lower() not in "aeiou")
#전통적 코딩
def disemvowel(str2handle):
vowel_character = ["a", "A", "e", "E", "o", "O", "i", "I", "u", "U"]
str2return = ""
i = 0
n = len(str2handle)
while i < n:
if not str2handle[i] in vowel_character:
str2return += str2handle[i]
i += 1
return str2return
#왜 이렇게 하면 안될까..
def vowel(string):
b=list(string)
for i in b:
if b[i] in ('a','e','i','o','u'):
del(b[i])
string="".join(b)
print(string)
vowel("stringcheese")