summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBarry Warsaw <barry@python.org>1995-06-15 15:54:16 (GMT)
committerBarry Warsaw <barry@python.org>1995-06-15 15:54:16 (GMT)
commit268a39fb84f1280e4f25e6d2b8d1e8c25bd5a372 (patch)
tree00f7a9f8737655b38bcb9ae751ed51fbc3bc47db
parentf1945466e8895453f2f19900b375f9f7cce99ee3 (diff)
downloadcpython-268a39fb84f1280e4f25e6d2b8d1e8c25bd5a372.zip
cpython-268a39fb84f1280e4f25e6d2b8d1e8c25bd5a372.tar.gz
cpython-268a39fb84f1280e4f25e6d2b8d1e8c25bd5a372.tar.bz2
converted to python
-rwxr-xr-xTools/world/world247
1 files changed, 123 insertions, 124 deletions
diff --git a/Tools/world/world b/Tools/world/world
index 7bff8b1..ac295cd 100755
--- a/Tools/world/world
+++ b/Tools/world/world
@@ -1,4 +1,4 @@
-#! /depot/gnu/plat/bin/perl
+#! /depot/sundry/plat/bin/python
#
# Note: you may have to edit the top line in this file.
#
@@ -14,133 +14,132 @@
# the speed in which political boundaries are changing these days, no
# doubt there are some incorrect mappings.
-$prog = $0;
-$ARGV[0] || die "No addresses provided.\nUsage: $prog addr1 [addr2 ...]\n";
+import sys
+prog = sys.argv[0]
+del sys.argv[0]
+if not sys.argv:
+ print "No addresses provided.\nUsage:", prog, "addr1 [addr2 ...]\n"
-
# The mappings
-%nameorg = (
- "arpa", "Arpanet",
- 'com', 'commercial',
- 'edu', 'educational',
- 'gov', 'government',
- 'mil', 'military',
- 'net', 'networking',
- 'org', 'non-commercial',
- 'int', 'international'
-);
+nameorg = {
+ "arpa": "Arpanet",
+ "com": "commercial",
+ "edu": "educational",
+ "gov": "government",
+ "mil": "military",
+ "net": "networking",
+ "org": "non-commercial",
+ "int": "international"
+ }
-%country = (
- "ag", "Antigua and Barbuda",
- "al", "Albania",
- "aq", "Antarctica",
- "ar", "Argentina",
- "at", "Austria",
- "au", "Australia",
- "bb", "Barbados",
- "be", "Belgium",
- "bg", "Bulgaria",
- "bo", "Bolivia",
- "br", "Brazil",
- "bs", "Bahamas",
- "bz", "Belize",
- "ca", "Canada",
- "ch", "Switzerland",
- "cl", "Chile",
- "cm", "Cameroon",
- "cn", "China",
- "co", "Colombia",
- "cr", "Costa Rica",
- "cy", "Cyprus",
- "cz", "Czech Republic",
- "de", "Germany",
- "dk", "Denmark",
- "dm", "Dominica",
- "do", "Dominican Republic",
- "ec", "Ecuador",
- "ee", "Estonia",
- "eg", "Egypt",
- "es", "Spain",
- "fi", "Finland",
- "fj", "Fiji",
- "fr", "France",
- "gb", "Great Britain",
- "gh", "Ghana",
- "gr", "Greece",
- "hk", "Hong Kong",
- "hr", "Croatia",
- "hu", "Hungary",
- "id", "Indonesia",
- "ie", "Ireland",
- "il", "Israel",
- "in", "India",
- "is", "Iceland",
- "it", "Italy",
- "jm", "Jamaica",
- "jp", "Japan",
- "km", "Comoros",
- "kn", "Saint Kitts and Nevis",
- "kr", "Republic of Korea",
- "kw", "Kuwait",
- "lc", "Saint Lucia",
- "li", "Liechtenstein",
- "lk", "Sri Lanka",
- "lu", "Luxembourg",
- "lv", "Latvia",
- "my", "Malaysia",
- "mx", "Mexico",
- "na", "Namibia",
- "ni", "Nicaragua",
- "nl", "Netherlands",
- "no", "Norway",
- "nz", "New Zealand",
- "pe", "Peru",
- "pg", "Papua New Guinea",
- "ph", "Philippines",
- "pl", "Poland",
- "pr", "Puerto Rico",
- "pt", "Portugal",
- "py", "Paraguay",
- "ro", "Romania",
- "se", "Sweden",
- "sg", "Singapore",
- "si", "Slovenia",
- "sk", "Slovakia",
- "sr", "Suriname",
- "su", "USSR",
- "tw", "Taiwan",
- "th", "Thailand",
- "tn", "Tunisia",
- "tr", "Turkey",
- "tt", "Trinidad and Tobago",
- "uk", "United Kingdom",
- "us", "United States",
- "uy", "Uruguay",
- "vc", "Saint Vincent and the Grenadines",
- "ve", "Venezuela",
- "vi", "Virgin Islands",
- "yu", "Yugoslavia",
- "za", "South Africa",
- "zw", "Zimbabwe"
- );
+country = {
+ "ag": "Antigua and Barbuda",
+ "al": "Albania",
+ "aq": "Antarctica",
+ "ar": "Argentina",
+ "at": "Austria",
+ "au": "Australia",
+ "bb": "Barbados",
+ "be": "Belgium",
+ "bg": "Bulgaria",
+ "bo": "Bolivia",
+ "br": "Brazil",
+ "bs": "Bahamas",
+ "bz": "Belize",
+ "ca": "Canada",
+ "ch": "Switzerland",
+ "cl": "Chile",
+ "cm": "Cameroon",
+ "cn": "China",
+ "co": "Colombia",
+ "cr": "Costa Rica",
+ "cy": "Cyprus",
+ "cz": "Czech Republic",
+ "de": "Germany",
+ "dk": "Denmark",
+ "dm": "Dominica",
+ "do": "Dominican Republic",
+ "ec": "Ecuador",
+ "ee": "Estonia",
+ "eg": "Egypt",
+ "es": "Spain",
+ "fi": "Finland",
+ "fj": "Fiji",
+ "fr": "France",
+ "gb": "Great Britain",
+ "gh": "Ghana",
+ "gr": "Greece",
+ "hk": "Hong Kong",
+ "hr": "Croatia",
+ "hu": "Hungary",
+ "id": "Indonesia",
+ "ie": "Ireland",
+ "il": "Israel",
+ "in": "India",
+ "is": "Iceland",
+ "it": "Italy",
+ "jm": "Jamaica",
+ "jp": "Japan",
+ "km": "Comoros",
+ "kn": "Saint Kitts and Nevis",
+ "kr": "Republic of Korea",
+ "kw": "Kuwait",
+ "lc": "Saint Lucia",
+ "li": "Liechtenstein",
+ "lk": "Sri Lanka",
+ "lu": "Luxembourg",
+ "lv": "Latvia",
+ "my": "Malaysia",
+ "mx": "Mexico",
+ "na": "Namibia",
+ "ni": "Nicaragua",
+ "nl": "Netherlands",
+ "no": "Norway",
+ "nz": "New Zealand",
+ "pe": "Peru",
+ "pg": "Papua New Guinea",
+ "ph": "Philippines",
+ "pl": "Poland",
+ "pr": "Puerto Rico",
+ "pt": "Portugal",
+ "py": "Paraguay",
+ "ro": "Romania",
+ "se": "Sweden",
+ "sg": "Singapore",
+ "si": "Slovenia",
+ "sk": "Slovakia",
+ "sr": "Suriname",
+ "su": "USSR",
+ "tw": "Taiwan",
+ "th": "Thailand",
+ "tn": "Tunisia",
+ "tr": "Turkey",
+ "tt": "Trinidad and Tobago",
+ "uk": "United Kingdom",
+ "us": "United States",
+ "uy": "Uruguay",
+ "vc": "Saint Vincent and the Grenadines",
+ "ve": "Venezuela",
+ "vi": "Virgin Islands",
+ "yu": "Yugoslavia",
+ "za": "South Africa",
+ "zw": "Zimbabwe"
+ }
-
-while ($addr = shift @ARGV) {
- ($_) = $addr =~ /\.(.*)$/;
- $_ = $addr if !$_;
+import string
- if ($nameorg{$_}) {
- # its one of the `special' USA organizational domains
- print "$addr is from a USA $nameorg{$_} organization\n";
- }
- elsif ($country{$_}) {
- # its a country code
- print "$addr originated from $country{$_}\n";
- }
- else {
- # who knows?
- print "I have no idea where $addr came from!\n";
- }
-}
+while sys.argv:
+ rawaddr = sys.argv[0]
+ del sys.argv[0]
+
+ components = string.splitfields(rawaddr, ".")
+ addr = components[-1]
+
+ if nameorg.has_key(addr):
+ print addr, "is from a USA", nameorg[addr], "organization"
+ elif country.has_key(addr):
+ print addr, "originated from", country[addr]
+ else:
+ print "I have no idea where", addr, "came from!"