from osgeo import ogr
g = ogr.Open('world.shp')
lyr = g.GetLyaer(0)
lyr.SetSpatialFilterRect(-14, 37, 38, 72)
for feat in lyr:
print(feat.GetFieldAsString('NAME') + '------'+feat.GetFieldAsString('CAPITAL'))
lyr.ResetReading()
ALGERIA ---- ALGIERS
BELGIUM ---- BRUSSELS
LUXEMBOURG ---- LUXEMBOURG
SAN MARINO ---- SAN MARINO
AUSTRIA ---- VIENNA
CZECH REPUBLIC ---- PRAGUE
SLOVENIA ---- LJUBLJANA
HUNGARY ---- BUDAPEST
SLOVAKIA ---- BRATISLAVA
YUGOSLAVIA ---- BELGRADE [BEOGRADE]
BOSNIA AND HERZEGOVINA ---- SARAJEVO
ALBANIA ---- TIRANE
MACEDONIA, THE FORMER YUGOSLAV REPUBLIC ---- SKOPJE
LITHUANIA ---- VILNIUS
LATVIA ---- RIGA
BULGARIA ---- SOFIA
BELARUS ---- MINSK
MOLDOVA, REPUBLIC OF ---- KISHINEV
IRELAND ---- DUBLIN
ICELAND ---- REYKJAVIK
SPAIN ---- MADRID
SWEDEN ---- STOCKHOLM
FINLAND ---- HELSINKI
TURKEY ---- ANKARA
RUSSIAN FEDERATION ---- MOSCOW
GREECE ---- ATHENS
PORTUGAL ---- LISBON
POLAND ---- WARSAW
NORWAY ---- OSLO
GERMANY ---- BERLIN
ESTONIA ---- TALLINN
TUNISIA ---- TUNIS
CROATIA ---- ZAGREB
ROMANIA ---- BUCURESTI
UKRAINE ---- KIEV
NETHERLANDS ---- AMSTERDAM
JERSEY ---- SAINT HELIER
GUERNSEY ---- SAINT PETER PORT
FAROE ISLANDS ---- TORSHAVN
DENMARK ---- COPENHAGEN
MONACO ---- MONACO
ANDORRA ---- ANDORRA LA VELLA
LIECHTENSTEIN ---- VADUZ
SWITZERLAND ---- BERN
ISLE OF MAN ---- DOUGLAS
UNITED KINGDOM ---- LONDON
FRANCE ---- PARIS
VATICAN CITY (HOLY SEE) ---- VATICAN CITY
ITALY ---- ROME