ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #171  
Старый 16.06.2009, 15:41
Аватар для Ergoproxy
Ergoproxy
Постоянный
Регистрация: 18.01.2008
Сообщений: 383
Провел на форуме:
9332138

Репутация: 476
Отправить сообщение для Ergoproxy с помощью ICQ
По умолчанию

Написать программу поиска самого длинного слова в строке, разделенной пробелами.


Кто знает как реализовать?
Получилось вот так но теперь не знаю как выбрать самое большое


Код:
 str = "Mary has a little lamb" 
 for w in str.split(" "):
      a = len(w)     
     print w, a
 
Ответить с цитированием

  #172  
Старый 16.06.2009, 16:13
Аватар для login999
login999
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме:
4512757

Репутация: 973


По умолчанию

ну ежели по тупорылому то за два прохода можно сделать без проблем
Код:
stroka = "Mary has a little lamb"
maxlength = 0
splitted_str = stroka.split(" ")
for w in splitted_str:
      if len(w)>maxlength:
          maxlength = len(w)
      else:
         pass

for w in splitted_str:
    if len(w) == maxlength:
        print w
    else:
       pass
проверил, поправил, 100% рабочий вариант

Последний раз редактировалось login999; 16.06.2009 в 16:47..
 
Ответить с цитированием

  #173  
Старый 16.06.2009, 16:49
Аватар для Ergoproxy
Ergoproxy
Постоянный
Регистрация: 18.01.2008
Сообщений: 383
Провел на форуме:
9332138

Репутация: 476
Отправить сообщение для Ergoproxy с помощью ICQ
По умолчанию

Цитата:
Сообщение от login999  
ну ежели по тупорылому то за два прохода можно сделать без проблем
Код:
stroka = "Mary has a little lamb"
maxlength = 0
splitted_str = stroka.split(" ")
for w in splitted_str:
      if len(w)>maxlength:
          maxlength = len(w)
      else:
         pass

for w in splitted_str:
    if len(w) == maxlength:
        print w
    else:
       pass
проверил, поправил, 100% рабочий вариант

Угу спасибо большое, ток вот maxlength для работы с буфером если я не ошибаюсь, а если ли нечто такое ток для строк? для цифр есть max() ПЫСЫ интерес)))
 
Ответить с цитированием

  #174  
Старый 16.06.2009, 16:52
Аватар для login999
login999
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме:
4512757

Репутация: 973


По умолчанию

Цитата:
Сообщение от Ergoproxy  
Угу спасибо большое, ток вот maxlength для работы с буфером если я не ошибаюсь, а если ли нечто такое ток для строк? для цифр есть max() ПЫСЫ интерес)))
maxlength - это имя переменной )
обрисуй что ты именно хочешь увидеть, для цифр есть макс потому что там все однозначно, 1>0 и ппц, а как ті будешь вібирать саму большую букву ?
 
Ответить с цитированием

  #175  
Старый 16.06.2009, 16:56
Аватар для razb
razb
Постоянный
Регистрация: 24.03.2009
Сообщений: 670
Провел на форуме:
2868783

Репутация: 414


Отправить сообщение для razb с помощью ICQ
По умолчанию

Вот так более компактно)
Код:
str = "Mary has a little lamb"
words = {}
for w in str.split(" "):
    words[len(w)] = w     

print words.get(max(words))

Последний раз редактировалось razb; 16.06.2009 в 17:06..
 
Ответить с цитированием

  #176  
Старый 16.06.2009, 17:05
Аватар для Ergoproxy
Ergoproxy
Постоянный
Регистрация: 18.01.2008
Сообщений: 383
Провел на форуме:
9332138

Репутация: 476
Отправить сообщение для Ergoproxy с помощью ICQ
По умолчанию

Мля и правда , ми вдуплил)
 
Ответить с цитированием

  #177  
Старый 23.06.2009, 19:50
Аватар для Ergoproxy
Ergoproxy
Постоянный
Регистрация: 18.01.2008
Сообщений: 383
Провел на форуме:
9332138

Репутация: 476
Отправить сообщение для Ergoproxy с помощью ICQ
По умолчанию

Как имея файл некий f.txt и содержимое вида:
127.0.0.1 125
10.0.0.1 126

составить словарь вида значение:ключ т.е
{'127.0.0.1 : '125', '10.0.0.1' : '126'}
 
Ответить с цитированием

  #178  
Старый 23.06.2009, 21:08
Аватар для [n]-c0der
[n]-c0der
Участник форума
Регистрация: 03.02.2009
Сообщений: 104
Провел на форуме:
270228

Репутация: 70
По умолчанию

Цитата:
Сообщение от Ergoproxy  
Как имея файл некий f.txt и содержимое вида:
127.0.0.1 125
10.0.0.1 126

составить словарь вида значение:ключ т.е
{'127.0.0.1 : '125', '10.0.0.1' : '126'}
парсить регуляркой, вообще очень просто.

Код:
import re
cortej = {}
with open('file1.txt','a+') as f1:
    for word in f1:
        txt1 = str(re.findall(r'(\d.*) ',word))[2:-2]
        txt2 = str(re.findall(r' (.*)',word))[2:-2]
        cortej[txt1]=txt2
print cortej

'''
Example:

file1:

    127.0.0.1 34
    128.0.0.2 43
    134.546.123.1 21

result:

    {'134.546.123.1': '21', '128.0.0.2': '43', '127.0.0.1': '34'}
'''

Последний раз редактировалось [n]-c0der; 23.06.2009 в 21:45..
 
Ответить с цитированием

  #179  
Старый 23.06.2009, 22:45
Аватар для login999
login999
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме:
4512757

Репутация: 973


По умолчанию

Цитата:
Сообщение от [n]-c0der  
парсить регуляркой, вообще очень просто.

Код:
import re
cortej = {}
with open('file1.txt','a+') as f1:
    for word in f1:
        txt1 = str(re.findall(r'(\d.*) ',word))[2:-2]
        txt2 = str(re.findall(r' (.*)',word))[2:-2]
        cortej[txt1]=txt2
print cortej

'''
Example:

file1:

    127.0.0.1 34
    128.0.0.2 43
    134.546.123.1 21

result:

    {'134.546.123.1': '21', '128.0.0.2': '43', '127.0.0.1': '34'}
'''
Ну вот и нахера там регулярка ?
Код:
some_dictionary = {}
with open("source.txt") as inpt:
    for line in inpt:
        line = line.translate(None, "\r\n").split(" ")
        some_dictionary[line[0]] = line[1]
print some_dictionary
 
Ответить с цитированием

  #180  
Старый 28.06.2009, 01:31
Аватар для razb
razb
Постоянный
Регистрация: 24.03.2009
Сообщений: 670
Провел на форуме:
2868783

Репутация: 414


Отправить сообщение для razb с помощью ICQ
По умолчанию

Цитата:
парсить регуляркой, вообще очень просто.
Код:
cortej = {}
2 [n]-coder, не хочу придераться к коду, но кортеж и словарь разные вещи )
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ