w PHP, można obsługiwać listę nazw państwowych i ich skrótów z tablicy asocjacyjnej jak ten:
<?php
$stateArray = array(
"ALABAMA"=>"AL",
"ALASKA"=>"AK",
// etc...
"WYOMING"=>"WY"
);
foreach ($stateArray as $stateName => $stateAbbreviation){
print "The abbreviation for $stateName is $stateAbbreviation.\n\n";
}
?>
Output (z zachowanym kluczem):
The abbreviation for ALABAMA is AL.
The abbreviation for ALASKA is AK.
The abbreviation for WYOMING is WY.
EDYCJA: Zwróć uwagę, że kolejność elementów tablicy jest zachowana na wyjściu wersji php. Implementacja Java, wykorzystująca HashMap, nie gwarantuje kolejności elementów. Ani słownik w Pythonie.
Jak to zrobić w Javie i Pythonie? I tylko znalezienie rozwiązań, które dostarczają wartość, biorąc pod klucz, jak Pythona:
stateDict = {
"ALASKA": "AK",
"WYOMING": "WY",
}
for key in stateDict:
value = stateDict[key]
EDIT: na podstawie odpowiedzi, to było moje rozwiązanie w Pythonie,
# a list of two-tuples
stateList = [
('ALABAMA', 'AL'),
('ALASKA', 'AK'),
('WISCONSIN', 'WI'),
('WYOMING', 'WY'),
]
for name, abbreviation in stateList:
print name, abbreviation
wyjściowa:
ALABAMA AL
ALASKA AK
WISCONSIN WI
WYOMING WY
Dokładnie to, co było wymagane.
Dlaczego mówisz, że "* liczba elementów tablicy PHP jest zachowana w wynikach" *? Czy to zachowanie ** jest gwarantowane ** przez dokumenty PHP? – Pacerier