中秋Challenge之Python乱码大战
本帖最后由 ~风介~ 于 2015-10-9 19:12 编辑<题外话>
</题外话>
题目:
这次的题目同样很简单,在屏幕上输出Happy Mid-Autumn Festival!(区分大小写),要写得让人看不懂,并且越混乱越好。
规则:
1. 不限Python版本。
2. 最乱并且最难懂的脚本获胜。
*3. 脚本中不得出现引号和井号。(加分项,可以不满足该条件!)
奖项:
一等奖: 小甲鱼公仔一枚 + 鱼币256
二等奖: 鱼币256
三等奖: 鱼币128 夕阳游龙 发表于 2015-9-28 11:09
不好意思,六楼我的初始代码少了一个感叹号,现在重新补上新的代码!!!!
这样真的好么???如果真的将代码打乱,或者添加无效代码我想没几个人会看的懂吧!!比如我打乱的正常代码,可以满足你的要求!
class Wzhhf(object):
def __init__\
(\
self\
,va1,va2)\
:
self.\
va1 \
= \
va1
self.\
va2 \
= \
va2
def __pck__\
(self\
,va1,\
va2\
)\
:
return self\
.va1\
*2\
-self\
.\
va2
def miyg\
(\
\
pg\
,\
\
n\
):
def rstw\
(\
vv1\
,\
vv2\
):
saq \
= \
Wzhhf\
(\
\
\
vv1\
,\
vv2\
)\
.__pck__(vv1,vv2)
return Wzhhf\
(\
\
saq\
,\
vv1\
)\
.\
__pck__\
(\
saq\
\
,\
vv1\
)
if pg\
\
.\
isupper\
(\
):
ttk \
=\
\
\
ord\
(\
chr\
(rstw\
(25,5\
)\
)\
)
elif pg\
.\
\
\
islower\
()\
:
ttk = ord\
(chr\
(rstw\
(35,\
4)\
)\
)
else:
return pg
c = ord\
(\
pg\
)\
- \
ttk
i \
= \
\
\
(\
c \
+ \
n\
)\
\
%\
26\
\
+ \
\
\
\
ttk
return chr\
(\
i\
)
class Zhaun\
\
(\
Wzhhf\
)\
:
def __init__\
(\
\
self\
,\
pp1\
,\
pp2\
,\
pp3\
)\
:
self\
.\
pp1\
\
=\
str\
(pp1)
self\
\
.\
pp2\
= \
str\
(\
pp2\
)
self\
.\
pp3 \
= \
str\
(\
pp3\
)
def __ccmp__\
(\
\
\
self\
,\
\
pp1\
,\
pp2\
,\
pp3\
)\
:
wh1 \
\
= \
\
[109,\
109\
,118,\
102,\
97,\
114,\
113,\
114,\
106,\
\
107,98\
,112,113,\
102,\
115,105]
wh2 \
=\
[\
78,\
103\
,83,\
71,\
\
76\
]
wh3 \
= \
\
[\
32,\
45,\
33\
]
for each \
in \
wh1\
:
self\
.\
pp1 \
+= \
miyg\
(\
chr\
(\
each\
)\
,3\
)
for \
each\
in \
\
wh2\
\
:
self\
.\
pp2\
+=\
miyg\
(\
\
chr\
(\
each\
)\
,\
-6\
)
for \
each \
in\
wh3\
:
self\
.pp3 \
+= \
miyg\
(\
chr\
(\
each\
),\
0)
print(\
self\
\
.\
pp2\
[\
1\
:\
3\
]\
+\
self\
.\
pp1\
[\
1\
:\
4\
]+\
self\
.\
pp3\
[\
1\
]\
+\
self\
.\
pp2\
[\
3]\
+\
self\
.\
pp1\
[\
4\
:\
6\
]+\
self\
.\
pp3\
[2\
]\
\
\
+self\
.\
pp2\
[\
4]+\
self\
.\
pp1\
[6\
:\
11]\
+\
self\
.pp3\
[1\
]+self\
.pp2\
+self.\
pp1+\
self.pp2\
+self.\
pp1\
+self.pp3)
Zhaun(1,2,3).__ccmp__(1,2,3)
@戴宇轩 @wei_Y @lightninng @Python_GoWithMe @夕阳游龙 @小树 @拈花小仙 @喵﹍咕 @freeparty 戴宇轩 发表于 2015-9-27 20:14
{:7_140:}感觉这格式不太符合编译器的胃口啊~{:7_140:} 没时间精装下,就这样吧!
class Wzhhf(object):
def __init__(self,va1,va2):
self.va1 = va1
self.va2 = va2
def __pck__(self,va1,va2):
return self.va1*2-self.va2
def miyg(pg,n):
def rstw(vv1,vv2):
saq = Wzhhf(vv1,vv2).__pck__(vv1,vv2)
return Wzhhf(saq,vv1).__pck__(saq,vv1)
if pg.isupper():
ttk = ord(chr(rstw(25,5)))
elif pg.islower():
ttk = ord(chr(rstw(35,4)))
else:
return pg
c = ord(pg) - ttk
i = (c + n)%26 + ttk
return chr(i)
def ccmp():
wh1 =
wh2 =
wh3 =
pp1 = str(1)
pp2 = str(2)
pp3 = str(3)
for each in wh1:
pp1 += miyg(chr(each),3)
for each in wh2:
pp2 += miyg(chr(each),-6)
for each in wh3:
pp3 += miyg(chr(each),0)
print(pp2+pp1+pp3+pp2+pp1+pp3+pp2+\
pp1+pp3+pp2+pp1+pp2+pp1)
ccmp() @瞬秒爆加速 {:7_129:}这次要求长长长~。哈哈,来应战嘛。 print("Happy Mid-Autumn Festival!")
:lol: 不好意思,六楼我的初始代码少了一个感叹号,现在重新补上新的代码!!!!
class Wzhhf(object):
def __init__(self,va1,va2):
self.va1 = va1
self.va2 = va2
def __pck__(self,va1,va2):
return self.va1*2-self.va2
def miyg(pg,n):
def rstw(vv1,vv2):
saq = Wzhhf(vv1,vv2).__pck__(vv1,vv2)
return Wzhhf(saq,vv1).__pck__(saq,vv1)
if pg.isupper():
ttk = ord(chr(rstw(25,5)))
elif pg.islower():
ttk = ord(chr(rstw(35,4)))
else:
return pg
c = ord(pg) - ttk
i = (c + n)%26 + ttk
return chr(i)
class Zhaun(Wzhhf):
def __init__(self,pp1,pp2,pp3):
self.pp1 = str(pp1)
self.pp2 = str(pp2)
self.pp3 = str(pp3)
def __ccmp__(self,pp1,pp2,pp3):
wh1 =
wh2 =
wh3 =
for each in wh1:
self.pp1 += miyg(chr(each),3)
for each in wh2:
self.pp2 += miyg(chr(each),-6)
for each in wh3:
self.pp3 += miyg(chr(each),0)
print(self.pp2+self.pp1+self.pp3+self.pp2+\
self.pp1+self.pp3+self.pp2+\
self.pp1+self.pp3+self.pp2+self.pp1+\
self.pp2+self.pp1+self.pp3)
Zhaun(1,2,3).__ccmp__(1,2,3) 夕阳游龙 发表于 2015-9-28 11:09
不好意思,六楼我的初始代码少了一个感叹号,现在重新补上新的代码!!!!
表示看不懂~~{:9_223:} 我就是来学习的,你们这仅作者可见有意思吗? 来学习 作为一个教程还没看完的初学者,很好奇出这样的题目的意义何在,代码不是越精简越好么 学习学系,表示一个都没看懂。
简单的几个字符串可以写30多行,厉害!
添加了无效代码的作品,我已经数不出来多少行了 楼主想干嘛{:7_141:} 夕阳游龙 发表于 2015-9-28 18:48
这样真的好么???如果真的将代码打乱,或者添加无效代码我想没几个人会看的懂吧!!比如我打乱的正常代 ...
这个代码6666666666{:9_232:} 牛,,,初学者来学习了》!! FDMa 发表于 2015-9-29 12:18
学习学系,表示一个都没看懂。
简单的几个字符串可以写30多行,厉害!
添加了无效代码的作品,我已经数不 ...
我的那39行代码里没有包含无效代码,我跟楼主说的是,如果想乱的话我可以写个几百上千行,因为涉及数学思想是将数字进行各种推移,比如我想得到一个整数97的话,可以编写几个函数以及类,通过输入一个数字或者几个数字来调用这个函数让其无论是通过二分算法还是其他算法让其最终返回一个97,也就是我输入一个(1,2)通过一个自己定义的函数bianhuan(1,2),返回到一个数字97或者一个字符串'a',可以完全不用任何引号,这个可以写很多! FDMa 发表于 2015-9-29 12:18
学习学系,表示一个都没看懂。
简单的几个字符串可以写30多行,厉害!
添加了无效代码的作品,我已经数不 ...
顺便跟你指出一点是:无效的死代码是指在程序里不会被执行到,删掉该行或者几行对程序没任何影响,多见于return后面(返回一个值后后面代码的直接都死掉了,不会被执行),以及if判断等(判断的布尔运算直接永远是False,比如 if 2 == 1:然后后面写一大堆,这个if永远会被跳过,也是无效的死代码等等)再比如用牛顿算法、二分法以及分割算法等编一个函数实现对任意一个数进行开方运算,达到和math中sqrt一样功能(不准使用math.sqrt),那么不同思想代码长度不一样,需要的时间也不一样,问题简单,但是思维很重要,难在简单上!其他很多问题看似很高大上很困难,大多都是调用别人写好的函数来实现来一点一点拼接,如果让你自己来创造函数呢?当然这也就是造车子和用车子的问题,不要随便说别人都是用的凑无效代码思想,自己觉得哪行是无效的自己直接删掉试下会不会报错和给出错误答案,如果会,那么说明这一句代码必不可少。这样检查自己才会提高。 我是不会,只能看看!