В основном, я пытаюсь сделать ввод (см. Ниже) и преобразовать формат в следующий вывод (см. Ниже). Результат - список словарей. Я играл с .split() и .strip(), но у меня все еще возникают проблемы с разделением IP-адреса с номером номера. (См мой код ниже)Python преобразует строку в список, а затем
вход:
"bromine ";" 00:23:AE:90:FA:C6 ";" 144.38.198.130";151 #(this is just one line in the file, there are several lines with this exact format)
выход:
[{'ip': '144.38.198.130', 'mac': '00:23:AE:90:FA:C6', 'name': 'bromine', 'room': '151'}] #(again this would be just one of the lines)
Мой код:
import sys
my_list = []
file = sys.stdin
for line in file:
# d = {}
line = line.strip('"')
line = line.split()
name = line[0]
macAddress = line[2]
ipAddress = line[4]
#roomNum = [?]
d={'ip': ipAddress, 'mac': macAddress, 'name': name, 'room': None}
my_list.append(d)
#print line
print d
Это выход я получаю: {» ip ':' 144.38.196.157 "; 119 ',' mac ': '00: 23: AE: 90: FB: 5B', 'name': 'telurium', 'room': None}
Закрыть, но не сигару, пытаясь отделить 119
@Wrenzoe: С удовольствием! Пожалуйста, не стесняйтесь [принимать] (http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work) мой ответ ... :) –