Python » Страница 971

-

Программирование на Python



HeaTTheatR


репутация: 94
на сайте с 2010 года
сообщений: 747

Украина, Луганск

Возраст - 42

#9701

Помогите с задачей...
Есть строка, вида


string = \
'''
Животное@
Собака#
Лает*
Кусает*
Бегает*
Кошка#
Мурлычит*
Ловит мышей*
Спит*
Птицы@
Орел#
Летает*
Убивает*
Ест*
Дятел#
Долбит*
Долбит*
Долбит*
'''


Как видно, в ней есть некоторые закономерности, а именно символы "@", "#", "*".
По этим, скажем так якорям, нужно составить кортеж вида:


{"Животное":
{"Собака":
["Лает",
"Кусает",
"Бегает"]
},

{"Кошка":
["Мурлычит"
"Ловит мышей"
"Спит"]
}

"Птицы":
{"Орел":
["Летает",
"Убивает",
"Ест"]
},

{"Дятел":
["Долбит"
"Долбит"
"Долбит"]
}
}


Третий час сижу, не могу найти алгоритма решения.

HeaTTheatR


репутация: 94
на сайте с 2010 года
сообщений: 747

Украина, Луганск

Возраст - 42

#9702

Вопрос решил.

nur87


репутация: 60
на сайте с 2006 года
сообщений: 559

Explay Golf

Казань

Возраст - 38

#9703

решение покажешь?

FanatGD


репутация: 14
на сайте с 2008 года
сообщений: 80

Nokia E72

#9704

Парни, расскажите, пожалуйста, кто на каких ресурсах обитает? Может у кого-то есть персональная страничка?

HeaTTheatR


репутация: 94
на сайте с 2010 года
сообщений: 747

Украина, Луганск

Возраст - 42

#9705

ВКонтакте, разве что smile

nur87


репутация: 60
на сайте с 2006 года
сообщений: 559

Explay Golf

Казань

Возраст - 38

#9706

Цитата: dimy44
#псм
Ильнур, давай свое решение)).


result = {}

for line in string.split('\n'):
if line.endswith('*'):
# Лает*
lvl2.append(line[:-1])
elif line.endswith('#'):
# Собакак#
lvl2 = lvl1.setdefault(line[:-1], [])
elif line.endswith('@'):
# Животное@
lvl1 = result.setdefault(line[:-1], {})

print result

FanatGD


репутация: 14
на сайте с 2008 года
сообщений: 80

Nokia E72

#9707

dimmy44, HeaTTheatR спасибо.
Хотел сказать о том же, что трудно, для Pys60 программистов, найти достойную замену этому сайту. И к тому же, я так и хожу со своим уже стареньким Е72, на котором периодически отрабатываю новые идеи.

HeaTTheatR


репутация: 94
на сайте с 2010 года
сообщений: 747

Украина, Луганск

Возраст - 42

#9708

Пытаюсь связаться с удаленным компьютером с помощью модуля socket, то есть есть клиент/сервер.
У меня вопрос: если в сервере указано, например


portsock = socket(AF_INET, SOCK_STREAM)
portsock.bind((myHost, myPort))

то в клиенте я должен коннектиться соответственно с теми же myHost, myPort?

sock.connect((myHost, myPort))


На тестах на одной машине работает. Попытался подключиться удаленно - болт. Время ожидания истекло.
-------------
добавлено в 20.18: В общем, все это, как оказалось, работает только по локалке.
Как я понял, чтобы работать с удаленным сервером, нужно запустить скрипт сервера на другом сервере в сети.
Вот выдержка из книги Марка Лутца:

"Что­бы за­ста­вить эти сце­на­рии об­щать­ся че­рез Ин­тер­нет, а не в пре­де­лах од­но­го ком­пь­ю­те­ра,
не­об­хо­ди­мо про­де­лать не­ко­то­рую до­пол­ни­тель­ную ра­бо­ту, что­бы за­пус­тить сер­вер­ный сце­на­рий на дру­гом ком­пь­ю­те­ре.
Во-пер­вых, нуж­но за­гру­зить файл с ис­ход­ным про­грамм­ным ко­дом сер­ве­ра
на уда­лен­ный ком­пь­ю­тер, где у вас есть учет­ная за­пись и Py­thon.
Ни­же по­ка­за­но, как я вы­гру­жаю этот сце­на­рий че­рез FTP на сайт, ко­то­рый рас­по­ла­га­ет­ся на ком­пь­юте­ре
с до­мен­ным име­нем learn­ing- py­thon.com, при­над­ле­жа­щем мне...

По­сле пе­ре­сыл­ки про­грам­мы сер­ве­ра на дру­гой ком­пь­ю­тер
нуж­но за­пус­тить ее там. Со­еди­ни­тесь с этим ком­пь­юте­ром и за­пус­ти­те про­грам­му сер­ве­ра.
Обыч­но я под­клю­ча­юсь к ком­пь­ю­те­ру сво­его сер­ве­ра че­рез Telnet или SSH
и за­пус­каю про­грам­му сер­ве­ра из ко­манд­ной стро­ки как по­сто­ян­но вы­пол­няю­щий­ся про­цесс."

Черт его знает что. Слов много, но не понятно совершенно!

JOIN_ME


репутация:
на сайте с 1970 года
сообщений:

#9709

Вопрос такой! Пишу для себя прогу. На работе каждый вечер отчётность по смс. И собсно проблема - не могу отправить мульти-смску. Одна отправляется посредством android.Android.smsSend, может для мульти нужен другой метод? Или же что-то другое необходимо?

dimy44


репутация: 537
на сайте с 2006 года
сообщений: 2540

HTC One S

Евпатория

Возраст - 54

#9710

В цикле по очереди? Вроде нет там возможности. Ну или попробовать вызывать само приложение отправки смс и там как-то параметры передавать, я не пробовал. Предпочитаю на email, там с этим проще.


Яндекс.Метрика