The marketing team is spending way too much time typing in hashtags.   
Let's help them with our own Hashtag Generator!

Here's the deal:

- It must start with a hashtag (`#`).
- All words must have their first letter capitalized.
- If the final result is longer than 140 chars it must return `false`.
- If the input or the result is an empty string it must return `false`.


## Examples

```
" Hello there thanks for trying my Kata"  =>  "#HelloThereThanksForTryingMyKata"
"    Hello     World   "                  =>  "#HelloWorld"
""                                        =>  false
```

Source: codewars | Difficulty: EASY
Tags: String algorithms

Starter code: def generate_hashtag(s):
	

Solutions:
def generate_hashtag(s):
	output = '#'
	for word in s.split():
		output += word.capitalize()
	return False if len(s) == 0 or len(output) > 140 else output


def generate_hashtag(s):
	ans = '#' + str(s.title().replace(' ', ''))
	return s and (not len(ans) > 140) and ans or False


def generate_hashtag(s):
	return '#' + s.strip().title().replace(' ', '') if 0 < len(s) <= 140 else False


def generate_hashtag(s):
	if not s or len(s) > 140:
		return False
	return '#' + ''.join((x.capitalize() for x in s.split(' ')))


def generate_hashtag(s):
	s = s.split()
	if len(s) > 140 or not s:
		return False
	ans = '#'
	for word in s:
		ans += word.title()
	if len(ans) > 140 or not s:
		return False
	return ans


generate_hashtag = lambda d: (lambda b: d > '' < b == b[:139] and '#' + b)(d.title().replace(' ', ''))


generate_hashtag = lambda _: (lambda __: _ > '' < _ == _[:140] and chr(35) + __)(_.title().replace(chr(32), ''))


def generate_hashtag(s):
	return '#' + ''.join([word.title() for word in s.split(' ')]) if s and len(s) <= 140 else False


def generate_hashtag(s):
	return 0 if not s or len(s) > 140 else f"#{''.join((e for e in s.title().split()))}"


def generate_hashtag(s):
	if not s:
		return False
	elif len(s) > 140:
		return False
	else:
		return '#' + ''.join(s.title().split())


def generate_hashtag(s):
	if 140 > len(s) > 0:
		L = s.split(' ')
		L1 = []
		for i in L:
			L1.append(i.capitalize())
		return '#' + str(''.join(L1))
	else:
		return False


def generate_hashtag(s):
	return '#{}'.format(s.title().replace(' ', '')) if len(s) in range(1, 141) else False


def generate_hashtag(s):
	s = '#' + s.title().replace(' ', '')
	return s if s != '#' and len(s) <= 140 else False


def generate_hashtag(s):
	return '#{}'.format(''.join(s.title().strip().split())) if len('#{}'.format(''.join(s.title().strip().split()))) <= 140 and s.strip() != '' else False


def generate_hashtag(s):
	if len(s) > 140:
		return False
	if len(s) == 0:
		return False
	return f"#{''.join([x.capitalize() for x in s.split()])}"


def generate_hashtag(s):
	if s == '' or len(s) > 140:
		return False
	return '#' + ''.join([i.capitalize() for i in s.split(' ')])


def generate_hashtag(s):
	return '#' + s.lower().title().replace(' ', '') if 141 > len(s) > 0 else False


def generate_hashtag(s):
	answer = '#' + ''.join([i.capitalize() for i in s.split()])
	return False if not s or len(answer) > 140 else answer


def generate_hashtag(s):
	s = ''.join((i.capitalize() for i in s.split()))
	return f'#{s}' if len(s) < 140 and s.isalpha() else False


def generate_hashtag(s):
	return '#' + s.title().replace(' ', '') if not s.isspace() and 0 < len(s) <= 140 else False


def generate_hashtag(s):
	hashtag = '#' + ''.join((i.title() for i in s.split()))
	return hashtag if s and len(hashtag) <= 140 else False


import string

def generate_hashtag(s):
	return '#' + ''.join(string.capwords(s).split(' ')) if len(s) <= 140 and len(s) != 0 else False


def generate_hashtag(s):
	return False if len(s) == 0 or len(s) > 140 else '#{}'.format(''.join(s.title().split()))


def generate_hashtag(s):
	hashtag = '#' + ''.join((word.capitalize() for word in s.split()))
	return hashtag if 1 < len(hashtag) <= 140 else False


def generate_hashtag(s):
	if not s:
		return False
	if len(s) > 140:
		return False
	result = '#'
	for word in s.split():
		result += word[0].upper() + word[1:].lower()
	return result


def generate_hashtag(s):
	return False if len(s) > 140 or not s.split() else '#' + ''.join(map(lambda x: x.capitalize(), s.split()))


def generate_hashtag(s):
	solution = '#' + ''.join([word.strip().capitalize() for word in s.split(' ')])
	if len(solution) > 1 and len(solution) < 140:
		return solution
	return False


def generate_hashtag(s):
	if len(s) == 0 or len(s) > 140:
		return False
	s = s.split()
	a = [i.title() for i in s]
	return '#' + ''.join(a)


def generate_hashtag(s):
	s = '#' + ''.join(s.title().split())
	return [s if 1 < len(s) < 140 else False][0]


def generate_hashtag(s):
	smod = ''.join([word.capitalize() for word in s.split()])
	return '#' + smod if s != '' and len(smod) <= 140 else False


def generate_hashtag(s):
	if not len(s):
		return False
	s = '#' + s.title().replace(' ', '')
	return s if len(s) <= 140 else False


import re

def generate_hashtag(s):
	return '#' + ''.join(re.findall('[A-Za-z]', s.title())) if 0 < len(s) < 140 else False


def generate_hashtag(s: str):
	number_of_chars = len(s)
	if s and number_of_chars < 140:
		words_list = [word.capitalize() for word in s.split()]
		words = ['#'] + words_list
		result = ''.join(words)
		return result
	else:
		return False


def generate_hashtag(s):
	s = str(s).title()
	if s == '':
		return False
	if len(s) > 144:
		return False
	return '#' + s.replace(' ', '')


def generate_hashtag(s):
	if not s:
		return False
	s = s.title().replace(' ', '')
	if not s or len(s) > 139:
		return False
	return '#' + s


import string

def generate_hashtag(s):
	if len(s) == 0 or len(s) > 140:
		return False
	else:
		y = ''.join(string.capwords(s).split(' ', string.capwords(s).count(' ')))
		m = '#' + y
		return m


def generate_hashtag(s):
	nword = '#'
	if s == '':
		return False
	elif len(s) > 140:
		return False
	else:
		for word in s.split():
			nword += word.capitalize()
		return nword


def generate_hashtag(s):
	if len(s) == 0 or len(s) >= 140:
		return False
	a = s.split()
	st = ''
	for i in range(len(a)):
		st += str(a[i].capitalize())
	return '#' + st


def generate_hashtag(s):
	if s == '' or len(s) > 140:
		return False
	return '#' + s.title().strip().replace(' ', '')


def generate_hashtag(str):
	return '#' + ''.join((word.capitalize() for word in str.split(' '))) if str and len(str) < 140 else False


def generate_hashtag(s):
	if not s or False or len(s) > 150:
		return False
	else:
		return '#' + ''.join([i.title() for i in s.strip().split()])


def generate_hashtag(s):
	s_arr = s.title().split(' ')
	hashtag = '#' + ''.join(s_arr)
	if len(hashtag) > 140 or len(hashtag) < 2:
		return False
	else:
		return hashtag


def generate_hashtag(s):
	if len(s) > 140 or len(s) == 0:
		return False
	s = s.title().replace(' ', '')
	return '#' + s