Проходил кто этот курс?Если вы про курсы трека "Fundamentals of computing" от Rice university, то да.
Смотреть его далее? Он полезен?На мой взгляд, да. Хотя в некоторых других курсах (Algorithms: Design and analysis от Stanford, читает Tim Roughgarden), на мой взгляд, некоторые моменты более полно освещены.
Отсюда у меня вопрос, стоит ли продолжать смотреть этот курс или можно забить, т.к. библиотека какая-то их собственная? Или все же эту библиотеку как-то можно установить, чтобы использовать ее import и работать с ней в консоли у себя на ПК? Нужна ли она вообще?Библиотека simplegui используется только для обеспечения интерфейса, задания предполагают, что необходимые алгоритмы вы реализуете самостоятельно. Исходя из личного опыта, могу сказать, что задания курса мне представились несложными, их можно выполнить, пользуясь интерфейсом codeskulptor.
Пример: нужно фильтровать все сайты, которые содержат точку и расширение файла из списка.Я не знаю, что означает "сайты, которые содержат точку". Если вам нужно среди всех URL исключить те, которые указывают на файл с определенным расширением, то я бы на вашем месте воспользовался строковым методом endswith:
import timeit
setup_code="""
sites_list = ["http://google.com",
"http://www.yandex.com",
"http://rambler.com/ololo.jpg",
"http://ya.ru/a.bmp"]
format_files = ['jpg', 'bmp', 'jpeg']
"""
print timeit.timeit("x=list(filter(lambda url: not any('.' + format_file in url for format_file in format_files), sites_list))",setup=setup_code,number=100000)
print timeit.timeit("x=list(url for url in sites_list if not url.endswith(tuple(format_files)))",setup=setup_code,number=100000)
1.01494306967
0.616600117219
def foo(s):
try:
s_int=int(s)
return s_int
except ValueError:
try:
s_float=float(s)
return s_float
except ValueError:
print "Incorrect string!"
print foo('123')
print foo('123.5')
print foo('1e-10')
print foo('toster')
SEPARATORS=",.;?! "
def toster_word_split(s):
result=[]
current_word=''
for char in s:
if char in SEPARATORS:
if current_word: result.append(current_word)
current_word=''
else:
current_word+=char
return result
print toster_word_split("Lorem,ipsum;bingo.Bongo? King of Kongo.")
distance += abs((i - m[i][j] / 4)) + abs((i - m[i][j] % 4))Если вы вычисляете "манхэттенское" расстояние между текущим и идеальным положениями плитки, то почему под знаками модуля в каждом случае используется один лишь индекс i? Я полагаю, корректнее будет исправить:
distance += abs((i - m[i][j] / 4)) + abs((j - m[i][j] % 4))
алгоритм ставит пустую фишку всегда в позицию [0, 0] а если поставить ее в другое место он "висит"Предполагаю, это из-за вашего подсчета расстояния. Вы нулевое значение (т.е. положение пустой кдетки) игнорируете по какой-то причине.
m = eval(puzz)это очень плохо. Может быть, это сгодится для "олимпиадок", но не рекомендую вам привыкать так делать.
Scrapy глохнет при скармливании ему неправильного URL.А вы пробовали к ресурсу, адресуемому этим URL, обратиться браузером? У меня открывается статья, с библиографическим номером 2002JIMO...30..199R. Более того, при помощи requests я получаю HTTP 200 в ответ на HEAD:
>>> import requests
>>> response = requests.head('http://adsabs.harvard.edu/full/2002JIMO...30..199R')
>>> response
<Response [200]>
Scrapy глохнет при скармливании ему неправильного URL(и так ли это вообще, может быть, эти явления не связаны). Может быть, сайт временно не работоспособен? Может быть, сервер вас (или ваш прокси) блокирует? Может быть, это ошибка Scrapy?
>>> a=[['{0}*{1}={2}'.format(row,col,col*row) for col in xrange (1,5)] for row in xrange(1,5)]
>>> a
[['1*1=1', '1*2=2', '1*3=3', '1*4=4'], ['2*1=2', '2*2=4', '2*3=6', '2*4=8'], ['3*1=3', '3*2=6', '3*3=9', '3*4=12'], ['4*1=4', '4*2=8', '4*3=12', '4*4=16']]
host[ip]['data'] = ''
...
host[ip]['data'] = host[ip]['data'] + d
host[ip] = ''
...
host[ip] = host[ip] + d
I29iZnVzY2F0ZTooAF0HDyoWEQELWQcOKVYILgE=
import itertools
value = 'ABCDEFG'
s = requests.Session()
s.get('https://server.ru')
for val,domain in itertools.product(['val1','val2'],['.aaa','.bbb']):
cookie_val={"name": val, "value": value, "domain":"%s.server.ru"%domain,}
s.cookies.set(**cookie_val)
s.get('https://server.ru/login?login=%s&password=%s' % (login, password))