We don't really need ranks for prostitutes our setup is from the original SimBro and it's both sound and a bit nostalgic for those who played the very first versions of games like PyTFall (SimBrothel, SlaveMaker and Hentai Highschool by the original author (Poolka)).
WRANKS = OrderedDict()
WRANKS["1"]=dict(name=('Rank 1: Kirimise', '(Almost beggar)'), price=0),
WRANKS["2"]=dict(iname=("Rank 2: Heya-Mochi", "(Low-class prostitute)"), skills={"sex": 100}, price=1000, exp=10000),
WRANKS["3"]=dict(name=("Rank 3: Zashiki-Mochi", "(Middle-class Prostitute"), skills={"sex": 300}, price=3000, exp=25000),
WRANKS["4"]=dict(name=("Rank 4: Tsuke-Mawashi", "(Courtesan)"), skills={"sex": 600}, price=5000, exp=50000),
WRANKS["5"]=dict(name=("Rank 5: Chûsan", "(Famous)"), skills={"sex": 1000, "refinement": 100}, price=7500, exp=100000),
WRANKS["6"]=dict(name=("Rank 6: Yobidashi", "(High-Class Courtesan)"), skills={"sex": 1250, "refinement": 150}, price=10000, exp=250000),
WRANKS["7"]=dict(name=("Rank 7: Koshi", "(Nation famous)"), skills={"sex": 1500, "refinement": 500}, price=25000, exp=400000),
WRANKS["8"]=dict(name=("Rank 8: Tayu", "(Legendary)"), skills={"sex": 3000, "refinement": 800}, price=50000, exp=800000)