一、前言




python payload有中文怎么转码 python怎么变成中文_Powered by 金山文档


是不是好看多了?

因为我们想把python的代码变成中文,但是又不可能真的去改python程序本体,所以我在这里使用的方法是自己搭建一个第三方库,然后再同路径下创建一个py文件,这样就可以导入我们刚才的库了。正因如此,第一行的import是真的改不了了。

那么,这个库该怎么写呢?当我们查看其他第三方库时,会发现,平时我们用到的那些命令,都是一个个函数,所以,依照这个思路,我们可以写一个包含了n个函数的库。

当然,前提是你的python支持使用中文作为变量和函数名。(应该较新版本的python都支持)

二、制作库

声明函数,使用的是def,并且函数后面的括号是很有效的。当我们在括号里输入东西时,就会按顺序转化为函数内部的变量。

例如:

def 生成随机数(最小值,最大值):
    c = random.randrange(最小值,最大值)
    return c

如果您和我一样,用的是VS Code,那么,当您把鼠标悬停在括号上时,就会显示这里填写的顺序。这也是为什么我使用中文作为函数内部变量名的原因。

当然,您可千万不要丢掉return!因为没有它,您的函数就没有一个正确的返回值!


python payload有中文怎么转码 python怎么变成中文_开发语言_02


接下来,就是根据自己的需要,把自己常用的命令转化为中文即可。

我这里写了一些,作为参考:

import time
import random
from math import *

def 打印(字符串或变量):
    print(字符串或变量)

def 等待(秒):
    time.sleep(秒)

def 取整(数字):
    a = int(数字)
    return a

def 输入(显示的字符):
     a = input(显示的字符)
     return a

def 打印变量类型(变量名):
    print(type(变量名))

def 取浮点数(数字):
     a = float(数字)
     return a

def 取复数(数字):
    a = complex(数字)
    return a

def 生成随机数(最小值,最大值):
    c = random.randrange(最小值,最大值)
    return c

def 转为字符串(变量名):
    a = str(变量名)
    return a

def 字符串长度(变量名):
    a = len(变量名)
    return a

def 布尔值(变量名):
    a = bool(变量名)
    return a

def 绝对值(数字):
    a = abs(数字)
    return a

def 开平方(数字):
    a = sqrt(数字)
    return a

def 正弦(数字):
    a = sin(数字)
    return a

def 余弦(数字):
    a = cos(数字)
    return a

def 正切(数字):
    a = tan(数字)
    return a

def 以2为底的对数(数字):
    a = log2(数字)
    return a

def 以10为底的对数(数字):
    a = log(数字)
    return a

当然,如果您不嫌麻烦,甚至可以改变从网上下载的第三方库为中文。

三、使用库

很简单,和别的库一样,唯一的不同就是在使用时需要把中文库和py文件放在一起,当然,如果您是长期使用,也可以放在python的第三方库文件夹里。

下面就是根据上面的例子写出来的一个简单的py中文代码:

from 自制中文库 import * #这里填写自己刚才做的库的文件名

变量一 = 1

打印(变量一)

等待(5)

变量二 = 取整(输入("输入数字"))

变量二的绝对值 = 绝对值(变量二)

打印(变量二的绝对值)

变量二的绝对值的开方 = 开平方(变量二的绝对值)

打印(变量二的绝对值的开方)

其中第一行一定要这样写,如果写成import 自制中文库 后面就需要一直带着 自制中文库 ,为了好看,还是选择 from 自制中文库 import *比较好。