有哪位会python大佬能我帮我解释下这些代码的意思? 最后全部
classmyCode:@staticmethoddeftoHex(x):s=""whilex>0:y=x%16if(y<10):s=chr(y+ord("0"))+se...
class myCode:
@staticmethod
def toHex(x):
s = ""
while x > 0:
y = x%16
if(y < 10):
s = chr(y + ord("0")) + s
else:
s = chr(y - 10 + ord("A")) + s
x = x//16
return s
@staticmethod
def binToString(b):
s = ""
for x in b:
s = s+myCode.toHex(x)
return s
@staticmethod
def show(s):
g = s.encode("gbk")
g = myCode.binToString(g)
un = s.encode("utf-16le")
un = myCode.binToString(un)
ut = s.encode("utf-8")
ut = myCode.binToString(ut)
print("%s GBK:%-4s Unicode:%-4s UTF-8:%-6s"%(s,g,un,ut))
@staticmethod
def list(m):
for i in range(m,m+1):
print("********** %2d区 **********"%i)
for j in range(1,95):
try:
c = [0xa0+i,0xa0+j]
c = bytes(c)
s = c.decode("gbk")
myCode.show(s)
except:
pass
@staticmethod
def seek(s):
if(len(s) >= 1):
s = s[0]
myCode.show(s)
@staticmethod
def process():
while True:
s = input("$")
s = s.split(" ")
if len(s) == 2:
if s[0] == "list":
m = 1
try:
m = int(s[1])
if(m<1 or m>94):
m = 1
except:
m = 1
myCode.list(m)
elif s[0] == "seek":
myCode.seek(s[1])
else:
print("list zone\nseek char")
elif s[0] == "exit":
break
myCode.process() 展开
@staticmethod
def toHex(x):
s = ""
while x > 0:
y = x%16
if(y < 10):
s = chr(y + ord("0")) + s
else:
s = chr(y - 10 + ord("A")) + s
x = x//16
return s
@staticmethod
def binToString(b):
s = ""
for x in b:
s = s+myCode.toHex(x)
return s
@staticmethod
def show(s):
g = s.encode("gbk")
g = myCode.binToString(g)
un = s.encode("utf-16le")
un = myCode.binToString(un)
ut = s.encode("utf-8")
ut = myCode.binToString(ut)
print("%s GBK:%-4s Unicode:%-4s UTF-8:%-6s"%(s,g,un,ut))
@staticmethod
def list(m):
for i in range(m,m+1):
print("********** %2d区 **********"%i)
for j in range(1,95):
try:
c = [0xa0+i,0xa0+j]
c = bytes(c)
s = c.decode("gbk")
myCode.show(s)
except:
pass
@staticmethod
def seek(s):
if(len(s) >= 1):
s = s[0]
myCode.show(s)
@staticmethod
def process():
while True:
s = input("$")
s = s.split(" ")
if len(s) == 2:
if s[0] == "list":
m = 1
try:
m = int(s[1])
if(m<1 or m>94):
m = 1
except:
m = 1
myCode.list(m)
elif s[0] == "seek":
myCode.seek(s[1])
else:
print("list zone\nseek char")
elif s[0] == "exit":
break
myCode.process() 展开
1个回答
2020-05-22 · 知道合伙人软件行家
关注
展开全部
你是全部都不懂?是的话,给你讲也没法理解,这里面包含很多知识点。
你还不如从基础语法去学,再来看这些代码。
如果是部分代码不懂,你说明一下,倒是可以给你解释一下。
你还不如从基础语法去学,再来看这些代码。
如果是部分代码不懂,你说明一下,倒是可以给你解释一下。
追问
我就是不懂第一第二给静态方法的运行流程
追答
静态方法有2个注意的,
1:它不需要实例化对象,直接使用类进行调用,所以代码中并没有myCode()语句,创建对象。调用都是“类名.方法”myCode.show(s)这样的。
2、它不会隐式传递self参数。
其他就和普通的方法没有区别了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询