zoukankan      html  css  js  c++  java
  • pythonchallenge 解谜 Level 1

    得到第一关地址后可以进行第一关的解析了。

    看起来好神秘的样子。但是也就是把字母 k 变成 m , o 变成 q ,e 变成 g。将字母对应的ASCII的值+2就行了。

     1 #-*- coding:utf-8 -*-
     2 #代码版本均为python 3.5.1
     3 #Level 1
     4 str = "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."
     5 
     6 def decode(i):
     7     """通过函数方法把i的值处理
     8        注意在ASCII中小写字母的范围
     9        使用函数ord() chr()
    10        函数内容可以优化,我懒得动了。
    11     """
    12     if ord(i)>=ord("a") and ord(i)+2<=ord("z"):  
    13         return chr(ord(i)+2)  
    14     elif i=="y" or i=="z":  
    15         return chr(ord(i)+1-ord("z")+ord("a"))  
    16     else :  
    17         return i
    18 
    19 for i in str:
    20     print (decode(i),end="")

    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.

    这就是经过解密后的话了。

    貌似,这个作者并不希望我们使用这个方法。。。额。。。我的内心几乎是崩溃的。。。

    不过,还是来一遍的好~

     1 # -* - coding: UTF-8 -* -
     2 #代码版本均为python 3.5.1
     3 #Level 1
     4 import string
     5 
     6 str1 = "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."
     7 str2 = "map"
     8 
     9 table = str.maketrans(string.ascii_lowercase,string.ascii_lowercase[2:]+string.ascii_lowercase[:2])
    10 #相信这个切片还是能够理解的
    11 print (str1.translate(table))
    12 print (str2.translate(table))

    关于函数的介绍请看此链接

    http://blog.csdn.net/wirelessqa/article/details/23793127

    所以可以得到下一个网址(就是把map按照规则进行变形为ocr)

    http://www.pythonchallenge.com/pc/def/ocr.html

    晚安~

  • 相关阅读:
    CSS的学习
    nodejs
    eureka注册中心
    netty的机制
    分布式事务
    spring cloud的基础
    一个发散动画的菜单控件(主要记录控件x,y坐标的运动状况)
    关于ViewPager高度自适应(随着pager页的高度改变Viewpager的高度)
    ViewPager的使用总结
    Android实现沉浸式状态栏(必须高逼格)
  • 原文地址:https://www.cnblogs.com/qipa/p/5500035.html
Copyright © 2011-2022 走看看