Skip to content

Instantly share code, notes, and snippets.

@jm42
Created April 8, 2020 20:40
Show Gist options
  • Save jm42/e8eabd9ac031f5b6211e791bc0ba1513 to your computer and use it in GitHub Desktop.
Save jm42/e8eabd9ac031f5b6211e791bc0ba1513 to your computer and use it in GitHub Desktop.
Countries Bounds
import csv
import json
data = {}
with open('countries.csv', 'r') as fr:
reader = csv.reader(fr, dialect='excel-tab')
for row in reader:
data[row[1].lower()] = [
[float(row[2]), float(row[3])],
[float(row[4]), float(row[5])],
]
with open('countries.json', 'w') as fw:
json.dump(data, fw)
We can make this file beautiful and searchable if this error is corrected: No commas found in this CSV file in line 0.
Andorra AD 1.416667 42.433333 1.783333 42.65 1.6 42.5416665
United Arab Emirates AE 45 22.166667 58 26.133333 51.5 24.15
Afghanistan AF 60.566667 29.383333 74.8868713067265 38.483611 67.7267691533633 33.933472
Antigua and Barbuda AG -62.333333 16.916667 -61.666667 17.733333 -62 17.325
Anguilla AI -63.433333 18.15 -62.916667 18.6 -63.175 18.375
Albania AL 19.266667 39.65 21.05 42.659167 20.1583335 41.1545835
Armenia AM 43.4425 38.894167 46.560556 41.3 45.001528 40.0970835
Netherlands Antilles AN -69.166667 12.016667 -62.933333 18.05 -66.05 15.0333335
Angola AO 10 -32 23.983333 -4.4 16.9916665 -18.2
Argentina AR -73.533333 -58.116667 -53.65 -21.783333 -63.5916665 -39.95
Austria AT 1.2 46.377222 19 49.016667 10.1 47.6969445
Australia AU 112.928889 -55.05 167.983333 -9.133333 140.456111 -32.0916665
Ashmore and Cartier Islands AU 123.016667 -12.533333 123.533333 -12.216667 123.275 -12.375
Coral Sea Islands AU 147.1 -29.472222 159.119444 -15.5 153.109722 -22.486111
Aruba AW -70.066667 12.416667 -69.85 12.616667 -69.9583335 12.516667
Azerbaijan AZ 44.876389 38.416667 50.858333 41.910556 47.867361 40.1636115
Bosnia and Herzegovina BA 15.747222 42.558056 19.618333 45.268333 17.6827775 43.9131945
Barbados BB -59.65 13.033333 -59.416667 13.333333 -59.5333335 13.183333
Bangladesh BD 84 20.6 92.683333 26.5 88.3416665 23.55
Belgium BE 2.566667 49.516667 6.4 51.683333 4.4833335 50.6
Burkina Faso BF -5.466667 9.45 2.2655 14.983333 -1.6005835 12.2166665
Bulgaria BG 22.371389 41 28.6 44.193611 25.4856945 42.5968055
Bahrain BH 45 25 50.823333 26.416667 47.9116665 25.7083335
Burundi BI 29.023889 -4.443333 30.831389 -2.3425 29.927639 -3.3929165
Benin BJ -4 6.233333 3.816667 12.3614 -0.0916665 9.2973665
Bermuda BM -64.882778 32.246944 -64.633333 32.390556 -64.7580555 32.31875
Brunei Darussalam BN 110 -2 120 5.05 115 1.525
Bolivia BO -69.6 -22.883333 -57.566667 -9.666667 -63.5833335 -16.275
Brazil BR -73.75 -33.733333 -28.85 5.266667 -51.3 -14.233333
Bahamas BS -80.483333 20 -70 29.375 -75.2416665 24.6875
Bhutan BT 80 26.716667 92.033333 30 86.0166665 28.3583335
Bouvet Island BV 3.285278 -54.452778 3.433889 -54.386111 3.3595835 -54.4194445
Botswana BW 20 -26.833333 29.016667 -17.833333 24.5083335 -22.333333
Belarus BY 22.55 50.716667 32.708056 56.066667 27.629028 53.391667
Belize BZ -89.216944 15.9 -87.483333 18.483333 -88.3501385 17.1916665
Canada CA -141.666667 40 -52.666667 83.116667 -97.166667 61.5583335
Cocos (Keeling) Islands CC 96.816667 -12.204167 96.918056 -11.833333 96.8673615 -12.01875
Congo (Kinshasa) CD 12.266667 -13.466667 31.233333 5.133333 21.75 -4.166667
Central African Republic CF 14.533333 2.433333 27.216667 10.7 20.875 6.5666665
Congo (Brazzaville) CG 11.166667 -4.995556 20 3.866667 15.5833335 -0.5644445
Switzerland CH 6 45.366667 10.5 49.866667 8.25 47.616667
Cte d'Ivoire CI -8.538889 4.35 -2.566667 10.652222 -5.552778 7.501111
Cook Islands CK -171.783333 -21.953056 -157.3375 -8.918611 -164.5604165 -15.4358335
Chile CL -109.466667 -56.533333 -66.433333 -17.53 -87.95 -37.0316665
Cameroon CM 8.483333 2.016667 16 16 12.2416665 9.0083335
China CN 74.166667 18.163056 134.672222 53.5 104.4194445 35.831528
Paracel Islands CN 106.7 6.183333 117.816667 20.7 112.2583335 13.4416665
Colombia CO -81.85 -4.214722 -66.854722 13.383333 -74.352361 4.5843055
Costa Rica CR -87.1 5.5 -82.05 11.216667 -84.575 8.3583335
Serbia and Montenegro CS 19.223056 42.556111 20.75 43.75 19.986528 43.1530555
Cuba CU -84.950833 19.828056 -74.135 23.265833 -79.5429165 21.5469445
Cape Verde CV -25.366667 14.8 -22.666667 17.2 -24.016667 16
Christmas Island CX 105.566667 -10.566667 105.75 -10.4 105.6583335 -10.4833335
Cyprus CY 32.270833 34.566667 34.6 35.7 33.4354165 35.1333335
Czech Republic CZ 12.116667 40.65 25.5 59.65 18.8083335 50.15
Germany DE 5.9 47.266667 15.033333 55.05 10.4666665 51.1583335
Djibouti DJ 41 10.9825 43.451944 13 42.225972 11.99125
Denmark DK 4.516667 53.583333 18 64 11.2583335 58.7916665
Dominica DM -61.483333 15.2 -61.25 15.633333 -61.3666665 15.4166665
Dominican Republic DO -71.966667 17.473056 -68.316667 19.933333 -70.141667 18.7031945
Algeria DZ -8.666667 19 13 37.116667 2.1666665 28.0583335
Ecuador EC -92 -4.95 -75.216667 1.65 -83.6083335 -1.65
Estonia EE 21.795833 57.521389 28.883333 59.983333 25.339583 58.752361
Egypt EG 24.7 20.383333 36.333333 31.916667 30.5166665 26.15
Western Sahara EH -17.110556 20.8 -8.666667 27.666667 -12.8886115 24.2333335
Eritrea ER 36.483333 12.383333 43.114722 18.033333 39.7990275 15.208333
Spain ES -18.166667 27.633333 4.333333 43.916667 -6.916667 35.775
Ethiopia ET 33.033333 3.433333 47.45 14.698889 40.2416665 9.066111
Finland FI 18 58.83 32 70.083333 25 64.4566665
Fiji FJ 180 -21.016667 -179.983333 -12.466667 -179.9916665 -16.741667
Falkland Islands FK -61.433333 -52.966667 -57.666667 -50.966667 -59.55 -51.966667
Micronesia FM 137.425 1.026389 163.034444 10.093611 150.229722 5.56
Faroe Islands FO -7.8 61.333333 -6.25 62.4 -7.025 61.8666665
Bassas da India FR 39.7 -21.416667 39.7 -21.416667 39.7 -21.416667
Europa Island FR 40.366667 -22.333333 40.366667 -22.333333 40.366667 -22.333333
France FR -5.133333 41.333333 9.533333 51.083333 2.2 46.208333
Glorioso Islands FR 47.3 -11.566667 47.366667 -11.5 47.3333335 -11.5333335
Clipperton Island FR -109.216667 10.283333 -109.216667 10.283333 -109.216667 10.283333
Juan de Nova Island FR 42.75 -17.05 42.75 -17.05 42.75 -17.05
Tromelin Island FR 54.416667 -15.866667 54.416667 -15.866667 54.416667 -15.866667
Gabon GA 8.7 -3.9 14.483333 2.283333 11.5916665 -0.8083335
United Kingdom GB -13.65 49.866667 2.866667 61.5 -5.3916665 55.6833335
Grenada GD -61.8 11.983333 -61.25 12.666667 -61.525 12.325
Georgia GE 40.013056 41.15 46.635556 43.570556 43.324306 42.360278
French Guiana GF -60 2.166667 -51.65 5.75 -55.825 3.9583335
Guernsey GG -2.7 49.401111 -2.158056 49.733333 -2.429028 49.567222
Ghana GH -4 4.733333 1.192778 11.15 -1.403611 7.9416665
Gibraltar GI -5.35 36.1 -5.333333 36.15 -5.3416665 36.125
Greenland GL -73.05 51.7 -12.133333 83.666667 -42.5916665 67.6833335
Gambia GM -16.816944 7 -4 13.816667 -10.408472 10.4083335
Guinea GN -15.366667 7 -4 12.633333 -9.6833335 9.8166665
Guadeloupe GP -63.15 15 -61 18.116667 -62.075 16.5583335
Equatorial Guinea GQ 5.05 -1.483333 11.4 3.783333 8.225 1.15
Greece GR 19.381667 34.8 29.648056 44 24.5148615 39.4
South Georgia and South Sandwich Islands GS -38.305 -59.466667 -26.333333 -53.970278 -32.3191665 -56.7184725
Guatemala GT -92.583333 13.751111 -87.05 17.816667 -89.8166665 15.783889
Guinea-Bissau GW -16.651944 5 -4 12.683333 -10.325972 8.8416665
Guyana GY -61.233333 1.316667 -56 8.433333 -58.6166665 4.875
Hong Kong SAR HK 113.833333 22.15 114.433333 22.566667 114.133333 22.3583335
Heard and McDonald Islands HM 72.566667 -53.2 73.85 -52.9 73.2083335 -53.05
Honduras HN -89.333333 13.016667 -82.5 17.45 -85.9166665 15.2333335
Croatia HR 13.493333 42.380278 19.383056 46.526944 16.4381945 44.453611
Haiti HT -74.483333 18.016667 -71.633333 20.083333 -73.058333 19.05
Hungary HU 16.183333 45.75 22.866667 48.983333 19.525 47.3666665
Indonesia ID 94.970278 -11 141.016667 10.616667 117.9934725 -0.1916665
Ireland IE -10.680833 51.425556 -6.0025 55.433333 -8.3416665 53.4294445
Israel IL 34.283333 29.516667 35.666667 33.286111 34.975 31.401389
Isle of Man IM -4.833333 54.033333 -4.316667 54.4 -4.575 54.2166665
India IN 67.016667 6.755556 97.35 35.9558333333333 82.1833335 21.3556946666667
British Indian Ocean Territory IO 71.265278 -7.35 72.483333 -5.233333 71.8743055 -6.2916665
Iraq IQ 38.800871 28.866667 48.833333 37.352778 43.817102 33.1097225
Iran IR 27.4455 25.05 62 39.7754 44.72275 32.4127
Iceland IS -24.533333 63.3 -13.2 66.566667 -18.8666665 64.9333335
Italy IT 1.35 35.483333 20.433333 48.533333 10.8916665 42.008333
Jersey JE -2.253889 49.112778 -1.927778 49.305833 -2.0908335 49.2093055
Jamaica JM -78.366667 17 -70 18.533333 -74.1833335 17.7666665
Jordan JO 34.9875 29 38.883333 33.002222 36.9354165 31.001111
Japan JP 122.933333 20.416667 154 45.520833 138.4666665 32.96875
Kenya KE 27.433333 -4.716667 41.8583834826426 4.883333 34.6458582413213 0.083333000000001
Kyrgyzstan KG 69.333333 39.25 80.115833 43.016667 74.724583 41.1333335
Cambodia KH 102.358333 9.916667 107.566667 17.483333 104.9625 13.7
Kiribati KI 179.716667 -10.3 -174.533333 4.716667 -177.408333 -2.7916665
Comoros KM 43.226111 -13 45.316667 -11.35 44.271389 -12.175
Saint Kitts and Nevis KN -62.85 17.1 -62.516667 17.416667 -62.6833335 17.2583335
North Korea KP 124.1875 37.6775 130.672222 43.003889 127.429861 40.3406945
Republic of Korea KR 124.612222 33.1175 131.866667 38.586667 128.2394445 35.8520835
Kuwait KW 45 25 49.410556 30.069444 47.205278 27.534722
Cayman Islands KY -81.416667 19.25 -79.716667 19.75 -80.566667 19.5
Kazakhstan KZ 46.589722 40.416667 90 55.330556 68.294861 47.8736115
Laos LA 100.095833 13.933333 107.633333 22.5 103.864583 18.2166665
Lebanon LB 35.103611 33.078333 36.592778 34.69 35.8481945 33.8841665
Saint Lucia LC -61.066667 13.7 -60.866667 14.1 -60.966667 13.9
Liechtenstein LI 9.5 47.05 9.75 47.233333 9.625 47.1416665
Sri Lanka LK 79.516667 5.916667 81.866667 9.833333 80.691667 7.875
Liberia LR -11.472222 4.328333 -4 9.5 -7.736111 6.9141665
Lesotho LS 24 -30.666667 29.316667 -28.616667 26.6583335 -29.641667
Lithuania LT 21 53 27 56.441667 24 54.7208335
Luxembourg LU 5.742778 49.460833 6.505833 50.181667 6.1243055 49.82125
Latvia LV 20.966667 55.7 28.2 58.066667 24.5833335 56.8833335
Libya LY 5 20.8 25.5 33.15 15.25 26.975
Morocco MA -13.1 5.51 2 36.21 -5.55 20.86
Monaco MC 7.4 43.716667 7.439444 43.745833 7.419722 43.73125
Moldova MD 26.672222 45.481667 30.096111 48.467222 28.3841665 46.9744445
Montenegro ME 18.438056 41.864167 20.3425 43.547778 19.390278 42.7059725
Madagascar MG 43.183333 -25.6 50.483333 -11.95 46.833333 -18.775
Marshall Islands MH 160.8 4.566667 172.8 19.316667 166.8 11.941667
Macedonia MK 20.459167 40.866667 23.033333 42.373056 21.74625 41.6198615
Mali ML -12.55 10.15 13 26 0.225 18.075
Myanmar MM 92.190833 6 102 28.35 97.0954165 17.175
Mongolia MN 87.783333 41.55 119.916667 52.1 103.85 46.825
Macau MO 113.531389 22.1125 113.592222 22.216389 113.5618055 22.1644445
Martinique MQ -61.966667 14.383333 -60.816667 14.866667 -61.391667 14.625
Mauritania MR -17.079444 14.7382733887277 13 26.9 -2.039722 20.8191366943638
Montserrat MS -62.233333 16.666667 -62.15 16.816667 -62.1916665 16.741667
Malta MT 14.185556 35.783889 14.575 36.081944 14.380278 35.9329165
Mauritius MU 56.6 -20.516667 72.466667 -5.25 64.5333335 -12.8833335
Maldives MV 72.583333 -0.7 73.7 7.1 73.1416665 3.2
Malawi MW 32.716667 -17.15 37 -5 34.8583335 -11.075
Mexico MX -119.921667 14.55 -86.716667 32.983333 -103.319167 23.7666665
Malaysia MY 99.641277 0.85 120 7.383333 109.8206385 4.1166665
Mozambique MZ 30.231389 -26.857222 40.845278 15.033333 35.5383335 -5.9119445
Namibia NA 12.016667 -28.933333 25.25 -16.983333 18.6333335 -22.958333
New Caledonia NC 158.246667 -22.783333 172.05 -18.016667 165.1483335 -20.4
Niger NE 0.233333 11.716667 16 26 8.1166665 18.8583335
Norfolk Island NF 167.95 -29.05 167.95 -29.05 167.95 -29.05
Nigeria NG 2.716667 4.266667 14.65 13.866667 8.6833335 9.066667
Nicaragua NI -87.684167 10.716667 -82.566667 15 -85.125417 12.8583335
Netherlands NL 3.133333 50.75 7.2 53.583333 5.1666665 52.1666665
Norway NO 3.033333 56.15 31.166667 71.181944 17.1 63.665972
Nepal NP 80 26.45 88.183333 30.45 84.0916665 28.45
Nauru NR 166.916667 -0.55 166.95 -0.5 166.9333335 -0.525
Niue NU -169.916667 -19.1 -169.783333 -18.933333 -169.85 -19.0166665
New Zealand NZ 179.066667 -52.616667 -178.9 -29.216667 -179.9166665 -40.916667
Oman OM 45 16.633333 59.838056 26.505 52.419028 21.5691665
Panama PA -82.95 7.213333 -77.283333 9.65 -80.1166665 8.4316665
Peru PE -81.358333 -18.333333 -68.833333 4.626667 -75.095833 -6.853333
French Polynesia PF 180 -27.916667 -179.8 16.633333 -179.9 -5.641667
Papua New Guinea PG 120 -11.65 159.483333 -0.733333 139.7416665 -6.1916665
Philippines PH 116.65 4.588889 126.604444 21.113056 121.627222 12.8509725
Pakistan PK 60.866667 23.966667 77.800014 37.0837107040298 69.3333405 30.5251888520149
Poland PL 14 45.5 26.5 54.833333 20.25 50.1666665
Saint Pierre and Miquelon PM -56.405278 46.748333 -56.120556 47.139722 -56.262917 46.9440275
Pitcairn PN -130.733333 -25.066667 -124.783333 -23.916667 -127.758333 -24.491667
Portugal PT -31.266667 30.033333 -5 42.15 -18.1333335 36.0916665
Palau PW 131.175 2.898333 134.716389 8.166667 132.9456945 5.5325
Paraguay PY -62.633333 -27.533333 -54.35 -19.333333 -58.4916665 -23.433333
Qatar QA 50.680556 24.284722 52.75 26.441111 51.715278 25.3629165
Reunion RE 55.216667 -21.366667 57 -20 56.1083335 -20.6833335
Romania RO 19 43.666667 29.65 48.25 24.325 45.9583335
Serbia RS 18.928889 41.866667 22.966667 46.155556 20.947778 44.0111115
Russian Federation RU 19.655556 38.7 147.172222 86.216667 83.413889 62.4583335
Rwanda RW 28.866667 -2.8 37 5 32.9333335 1.1
Saudi Arabia SA 34.566667 5 55.166667 32.2 44.866667 18.6
Solomon Islands SB 155.516667 -12.883333 170.2 -5.166667 162.8583335 -9.025
Seychelles SC 46.216667 -10.216667 56.266667 -3.716667 51.241667 -6.966667
Sudan SD 21.883333 3.516667 38.833333 27.166667 30.358333 15.341667
Sweden SE 10.958333 46.758333 25 69.033333 17.9791665 57.895833
Singapore SG 102 1.159444 104.4075 4 103.20375 2.579722
Saint Helena SH -14.416667 -40.4 -5.633333 -7.9 -10.025 -24.15
Slovenia SI 13.426667 45.083333 17.466667 46.866667 15.446667 45.975
Jan Mayen Island SJ -9.071944 70.826389 -7.933056 71.157778 -8.5025 70.9920835
Svalbard SJ 10.5 74.35 32.583333 80.816667 21.5416665 77.5833335
Slovakia SK 17 45.5 26.5 49.6 21.75 47.55
Sierra Leone SL -13.316667 5 -4 10 -8.6583335 7.5
San Marino SM 12.416667 43.908333 12.5 43.966667 12.4583335 43.9375
Senegal SN -17.682778 12.336667 -11.3780213873722 16.666667 -14.5303996936861 14.501667
Somalia SO 41 -1.65942969590957 51.4 11.983333 46.2 5.16195165204521
Suriname SR -60 2.1 -53.983333 6 -56.9916665 4.05
Sao Tome and Principe ST 6.466667 -0.016667 7.483333 1.733333 6.975 0.858333
El Salvador SV -90.116389 13.158611 -87.657222 14.433333 -88.8868055 13.795972
Syria SY 35.6 32 42.337778 37.280278 38.968889 34.640139
Swaziland SZ 30.783333 -27.316667 32.133333 -25.783333 31.458333 -26.55
Turks and Caicos Islands TC -72.466667 21.116667 -71.083333 21.95 -71.775 21.5333335
Chad TD 2 7.5 24 26 13 16.75
French Southern Lands TF 50.233333 -50.016667 77.6 -37.783333 63.9166665 -43.9
Togo TG -4 6.131944 1.816667 11.103889 -1.0916665 8.6179165
Thailand TH 97.366667 5.616667 105.766667 20.442778 101.566667 13.0297225
Tajikistan TJ 67.416667 36.716667 75 40.9 71.2083335 38.8083335
Tokelau TK -172.516667 -9.433333 -171.183333 -8.533333 -171.85 -8.983333
Timor-Leste TL 124.085556 -9.469722 127.336667 -7.597222 125.7111115 -8.533472
Turkmenistan TM 52.5 35.216667 66.65 42.566667 59.575 38.891667
Tunisia TN 7 26 13 37.566667 10 31.7833335
Tonga TO -176.2 -22.333333 -150 -15.566667 -163.1 -18.95
Turkey TR 25 35.819444 44.8 42.1 34.9 38.959722
Trinidad and Tobago TT -74 10.033333 -60.5 20 -67.25 15.0166665
Tuvalu TV 176.116667 -10.75 179.883333 -5.65 178 -8.2
Taiwan TW 118.115255566105 21.733333 122.107778 26.389444 120.111516783053 24.0613885
Tanzania TZ 29.583333 -11.7 40.433333 0.833333 35.008333 -5.4333335
Ukraine UA 20.933333 37.8 68.85 63.4 44.8916665 50.6
Uganda UG 29.583333 -1.433333 34.95 4.166667 32.2666665 1.366667
United States US 167.740111 8.731796 167.740111 8.731796 167.740111 8.731796
Uruguay UY -58.5 -35.033333 -53.266667 -30.183333 -55.8833335 -32.608333
Uzbekistan UZ 56.083333 35.266667 80.383333 48.583333 68.233333 41.925
Vatican City VA 12.45 41.9 12.45 41.9 12.45 41.9
Saint Vincent and the Grenadines VC -61.433333 12.533333 -61.116667 13.366667 -61.275 12.95
Venezuela VE -73.16 0.766667 -59.966667 15.7 -66.5633335 8.2333335
British Virgin Islands VG -64.85 18.3 -64.266667 18.766667 -64.5583335 18.5333335
Viet Nam VN 102.216667 8.383333 109.466667 23.666667 105.841667 16.025
Vanuatu VU 166.016667 -20.25 170.216667 -13.066667 168.116667 -16.6583335
Wallis and Futuna Islands WF -178.183333 -14.35 -176.083333 -13.183333 -177.133333 -13.7666665
Samoa WS -172.816667 -14.05 -171 -13.433333 -171.9083335 -13.7416665
Yemen YE 41.833333 12.1 54.533333 27.695278 48.183333 19.897639
Mayotte YT 45.024444 -12.993889 45.288611 -12.641389 45.1565275 -12.817639
South Africa ZA 16.466667 -34.833333 32.883333 -22.133333 24.675 -28.483333
Zambia ZM 22 -18.05 39.283333 5 30.6416665 -6.525
Zimbabwe ZW 25.333333 -22.316667 33.05 -15.6 29.1916665 -18.9583335
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment