def dirReduc(arr):
dirs = {"NORTH": "SOUTH", "SOUTH": "NORTH", "EAST": "WEST", "WEST": "EAST"}
stack = []
for d in arr:
if stack and dirs[d] == stack[-1]:
stack.pop()
else:
stack.append(d)
return stack
def find_short(text):
num_of_let=0
min_numb = len(text)
for elem in text:
if elem == ' ':
if num_of_let < min_numb:
min_numb=num_of_let
num_of_let=0
else:
num_of_let+=1
return min_numb
text = 'bitcoin take over the world maybe who knows'
find_short(text)
def find_short(text):
num_of_let=0
word=[]
min_numb = len(text)
for elem in text:
if elem == ' ':
if num_of_let < min_numb:
min_numb=num_of_let
min_word=''.join(word)
num_of_let=0
word=[]
else:
word=word+list(elem)
num_of_let+=1
return min_numb,min_word
def all_unique(arg):
if hasattr(arg, '__iter__'):
arg=list(arg)
if arg==[]:
return True
elif len(set(arg)) == len(list(arg)):
return True
return False
all_unique([])
all_unique("cat")
all_unique([1, 2, 3])
all_unique([1, 2, 1])
all_unique([1])
all_unique(iter([]))
all_unique(iter([1]))
all_unique(iter([1, 2, 3]))
all_unique(iter([1, 2, 1]))
def all_unique(iterator):
counter = 0
items = set()
for item in iterator:
items.add(item)
counter += 1
if len(items) != counter:
return False
return True
Расскажите о своем мнении, как сделать код лучше?
alphabet = 'abcdefghijklmnopqrstuvwxyz'
text = "The sunset sets at twelve o'clock."
def alphabet_position(text):
text = ' '.join(char for char in text.lower() if char.isalpha())
return text.translate({ord(c): str(i) for i,c in enumerate(alphabet,1)})
print(alphabet_position(text))
In [4]:
20 8 5 19 21 14 19 5 20 19 5 20 19 1 20 20 23 5 12 22 5 15 3 12 15 3 11
if text_lowercase[i] not in alphabet:
continue
if not bool(command):
>>> not True
False
>>> not False
True
if not bool(command):
if not False:
if True:
tries = 3 #число попыток ввести фигню
while tries: #пока не tires не 0 и не None
print('>>> ', end='') #принти что-то
command = input() # вводи текст
if not command: # если command не обьявлен (ты ничего не ввел выше)
continue
#начинай цикл заново не выполняя его нижнючасть
if command in ('echo', 'cd', 'help'): #если введенное равно любому элементу из списка
break # досрочно прерви цикл
print('Unknown command!')
tries -= 1 #уменьши tires на 1
else:
print('Too many bad tries!') # выскочит когда ты три раза введешь фигню и tries будер равен 0
command = None
value1 || value2 || ... || valueN
в JavaScript вернёт первое ненулевое значение (которое приводится к булеву true
)