python challenge - map.py

3137 ワード

Hint: K->M    O->Q    E->G
everybody thinks twice before solving this.
 
g fmnc wms bgblr rpylqjyrc gr zw fylb.rfyrq ufyr amknsrcpq ypc dmp.bmgle gr gl zw fylb 
gq glcddgagclr ylb rfyr'q ufw rfgq rcvr gq qm jmle.sqgle qrpgle.kyicrpylq() gq 
pcamkkclbcb.lmu ynnjw ml rfc spj.
General tips:
  • Use the hints. They are helpful, most of the times.
  • Investigate the data given to you.
  • Avoid looking for spoilers.
  • #!/usr/bin/env python
    # http://www.pythonchallenge.com/pc/def/map.html
    import string
    str1 = "abcdefghijklmnopqrstuvwxyz"
    str2 = "cdefghijklmnopqrstuvwxyzab"
    transtr = string.maketrans(str1, str2)
    aimstr = "g fmnc wms bgblr rpylqjyrc gr zw fylb. rfyrq ufyr amknsrcpq ypc dmp. bmgle gr gl zw fylb gq glcddgagclr ylb rfyr'q ufw rfgq rcvr gq qm jmle. sqgle qrpgle.kyicrpylq() gq pcamkkclbcb. lmu ynnjw ml rfc spj."
    print aimstr.translate(transtr)

    または
    #!/usr/bin/python
    # http://www.pythonchallenge.com/pc/def/map.html
    import string 
    tr=string.maketrans(string.lowercase,string.lowercase[2:]+string.lowercase[:2])
    s="g fmnc wms bgblr rpylqjyrc gr zw fylb. rfyrq ufyr amknsrcpq ypc dmp. bmgle gr gl zw fylb gq glcddgagclr ylb rfyr'q ufw rfgq rcvr gq qm jmle. sqgle qrpgle.kyicrpylq() gq pcamkkclbcb. lmu ynnjw ml rfc spj."
    print s.translate(tr)

    出力:
    i hope you didnt translate it by hand. thats what computers are for. doing it in by hand is inefficient and that's why this text is so long. using string.maketrans() is recommended. now apply on the url.

    次の関門:http://www.pythonchallenge.com/pc/def/ocr.html
    文字列maketrans()、translate()