@Моника, мисля, че той има предвид, че тестовете не са както трябва и няма да Fail-нат, ако функцията му върне това, което е написал..
Втора задача
@Драгомир Тунчев, прав си.
@Антонио Николов, извинявай, минах през мненията набързо и явно съм те разбрала погрешно. Anyway, и ти си прав.
Въпреки, че даваме точки за верните отговори от ваши колеги, не съм сигурен, че всичко се разбира. Ще се опитам да резюмирам.
sort_by променя ли подадения обект ? Ако да, връща ли го или не връща нищо ? Също така, няма проблем да ползваме някоя функция от някой модул, нали ?
Не. Не мутирайте обектите, които са ви подадени като аргумент, освен ако условието не го изисква изрично.
Дума е комбинация на n елемента k-ти клас от множеството на буквите, което пък се дефинира като множеството от символите в utf-8.
@)$☻%⌨^(☭!+_12
ми е любимата дума :) Хайде без глупости. Ще тестваме с думи, в които има само букви от латинската или българска азбука. Оставете малко дискретната математика на страна и си мислете за думи от речта. Не забивайте дори в това да хващате умлаути.За anagrams, ако подадем списъка ['bau', 'bau'] какво трябва да се върне: [['bau']] или [['bau', 'bau']]?
[['bau', 'bau']]
Тестовете за последната задача не ми се струват много коректни. Защо ги каствате към set?
Тестовете, които сме ви предоставили са просто примерни. Те ще ви кажат, ако сте объркали нещо фундаментално. Не ви гарантират пълен брой точки :)
За
anagrams
също ли ще тествате с думи на кирилица ? Ако да, някакъв encoding ли трябва да ползваме за да ги извежда ? Аналогично и заchar_histogram
.@Венцислав, python по подразбиране си работи безгершно с Уникод. Не виждам защо ще ни карат да ползваме разни encoding-и. Все пак важното е програмите ни принципно да работят и да са възможно най-добре изпипани стилово, а не да издребняваме за щяло и нещяло. Сиреч, просто четем параметрите съвсем нормално и си връщаме пресметнатите резултатите, като не се тревожим за форматиране, ако минава примерните тестове. Ако беше нужно, такова едно уточнение със сигурност щеше да стои в условието, както би трябвало да стои и в списъка с изискванията за всеки добре планиран софтуерен проект.
@Стефан, прав си, моя грешка, проблемът идваше от там, че print-вах резултата, за което вече трябва encoding
Използвам Sublime Text 3 и когато въведа в конзолата му view.encoding() ми изкарва utf-8. Когато обаче използвам ord върху буква от кирилицата ми изкарва грешка, че е 'non-ascii' символ, какво трябва да направя за да мога да използвам кирилицата?
Да накараш конзолата на sublime да използва python 3.3.
>>> ord('щ') <<< 1097
За функцията sort_by_type използвам setdefault(type(key), {key:value}) и това е във for цикъл. Обаче, ми взима само по 1 ключ + стойностите от даден тип.Някакви идеи как да го заобиколя това ?
Имам въпорс относно функцията sort_by
написах някакъв код, който според мен работи пуснах теста и получавам съобщение от типа
AssertionError: Lists differ: ['a', 'ab', 'abc'] != ['a', 'ab', 'abc']
First differing element 0: a 'a'
['a', 'ab', 'abc']
какво не е наред?
На мен подобен изход ми изкара когато смених едно 'а' на литински с 'а' на кирилица. Дали проблема не е с подобен характер(т.е. в самия тест да е проблема) ?
По скоро мисля че проблема е че аргументите в изходния списък са от Custom тип а не от type list?
На прав път ли съм?
@РЕДАКЦИЯ
Да това се оказа проблема....
По скоро мисля че проблема е че аргументите в изходния списък са от Custom тип а не от type list?
Не.
На мен подобен изход ми изкара когато смених едно 'а' на литински с 'а' на кирилица. Дали проблема не е с подобен характер(т.е. в самия тест да е проблема) ?
Не. Както можем да видим от самия тест, няма символи на кирилица в
test_sort_by
.@Константин, изпрати домашното и ще ти помогнем. Просто за конкретния случай не виждам как можем да решим проблема без "Show me the code!" от нечия страна, което знаем, че е в разрез с нашите строги правила за преписване :)
Sorry за тъпия въпрос ама къде да го пратя при предадени или?
@Редакция
Предадох го, дано този вариант е окей за комуникация
-
Бърз въпрос относно анаграми:
'woman hitler' и 'mother-in-law' анаграми си са?
'dormitory' и 'dirty room' анаграми ли са?
Взети са от тестовете на @Ралица. Просто не можах да се сетя за по-добър пример.
Да, анаграми са. Игнорираме символите - гледа се само дали съдържат еднакви букви.
Нека изразя разочарованието си от отговора с тези тестове:
https://gist.github.com/mitko0003/9630747
(за анаграми)
В първия тест имаш 6 i-та в първия низ, а във втория 5 i-та => не би трябвало да са анаграми. Също така си пропускал whitespace-ове.
Прав си изтрил съм го при Edit-ването (вече е поправено) колкото до whitespace-ове те са без значение и не съм ги следял (анаграми са и без тях).
За анаграмите да обаче като сравняваш сетовете и си поставял whitespace на различни места ще ти изгърми.
@Антонио, първия тест на @Димитър е верен, защото в тази уики статия пише, че примерни анаграми са:
"Bryan Waller Proctor" = "Barry Cornwall, poet"
а както се вижда в първата фраза има 4 'r'-та, а във втората 3 'r'-та.
Примерите в тази статия са за псевдоними на автори и се броят за изключения. При тях са изпуснати букви за по лесно произношение и не мисля, че трябва да се броят.
Several of these are "imperfect anagrams", letters having been left out in some cases for the sake of easy pronunciation.
Мерси, не го бях видяла това за 'imperfect anagrams' :)
Трябва да сте влезли в системата, за да може да отговаряте на теми.