Unë kam një tabelë me 2 kolona që përbëhet nga artikujt në kolonën e parë dhe kategoritë e ngjyrave në të dytën, me artikullin dhe ngjyrat të kufizuara nga skeda:
car blue
bicycle;scooter green
boat yellow
firetruck;airplane;skateboard red
motorcycle black
Do të doja të transformoja tabelën/listën për të lexuar:
car blue
bicycle green
scooter green
boat yellow
firetruck red
airplane red
skateboard red
motorcycle black
Po mendoja se do të më duhej të kisha një funksion të përcaktuar për të trajtuar ndarjen e vargut të kufizuar në kolonën 1 dhe për të shkruar kategorinë e duhur në kolonën e dytë për çdo rresht/rresht.
Unë mendoj se logjika në thelb thotë:
with open('colors_in.txt', 'rt') as src:
with open('colors_out.txt', 'wt') as dest:
#store column 2 category in a variable and break apart the string at the delimiter in new lines + category
def splitter()
colorval = (row[1] for row in src)
for line in src:
for word in line.split(';'):
dest.write(word.rstrip() + colorval + '\n')
if ";" in line:
splitter()
else:
for line in src:
dest.write(line)
Unë kam shikuar përreth për qasje ndaj këtij problemi dhe kam parë disa elementë mjaft kompleksë që përfshijnë numpy dhe imap() që nuk jam vërtet i sigurt se si t'i inkorporoj. E di që kodi i mësipërm është jashtëzakonisht i pasaktë -- thjesht u përpoqa të shpreh sa më mirë që të mundja atë që dua që kodi të bëjë/përfundojë. Do të ishim mirënjohës për çdo pasqyrë - faleminderit!
r
dhew
nërt
dhewt
dhe gjithashtu shtovanewline = ''
në mënyrë që prodhimi im të mos kishte vija boshe midis rreshtave. 26.08.2015