import json

text = ""
strikethrough = ""

def generate_json_data(text,color,bold,italic,underlined,obfuscated,strikethrough):
    data = {
        "text": text,
        "color": color,
        "bold": bold,
        "italic": italic,
        "underlined": underlined,
        "strikethrough": strikethrough,
        "obfuscated": obfuscated
    }
    json_data = json.dumps(data, ensure_ascii=False).encode('utf8')
    return json_data

def user_input():
    global text, color_name, bold, italic, underlined
    text = input("请输入文字文本:")
    print("支持颜色:黑色、深蓝色、深绿色、湖蓝色、深红色、紫色、金色、灰色、深灰色、蓝色、绿色、天蓝色、红色、粉红色、黄色、白色")
    颜色 = input("请输入颜色(请输入单字,例如‘红色’、‘黄色’、‘绿色’等,需要加‘色’字):")
    粗体 = input("是否粗体(是、否):")
    斜体 = input("是否斜体(是、否):")
    下划线 = input("是否添加下划线(是、否):")
    删除线 = input("是否添加删除线(是、否):")
    布尔值判断(粗体, 斜体, 下划线, 删除线)
    color_name = color(颜色)
    return color_name

def 布尔值判断(粗体, 斜体, 下划线, 删除线):
    global bold, italic, underlined
    bold = False
    italic = False
    underlined = False
    strikethrough = False
    if 粗体 == "是":
        bold = True
    if 斜体 == "是":
        italic = True
    if 下划线 == "是":
        underlined = True
    if 删除线 == "是":
        strikethrough = True

def color(颜色):
    if 颜色 == "黑色":
        color_name = "black"
    elif 颜色 == "深蓝色":
        color_name = "dark_blue"
    elif 颜色 == "深绿色":
        color_name = "dark_green"
    elif 颜色 == "湖蓝色":
        color_name = "drak_aqua"
    elif 颜色 == "深红色":
        color_name = "dark_red"
    elif 颜色 == "紫色":
        color_name = "dark_purple"
    elif 颜色 == "金色":
        color_name = "gold"
    elif 颜色 == "灰色":
        color_name = "gray"
    elif 颜色 == "深灰色":
        color_name = "dark_gray"
    elif 颜色 == "蓝色":
        color_name = "blue"
    elif 颜色 == "绿色":
        color_name = "green"
    elif 颜色 == "天蓝色":
        color_name = "aqua"
    elif 颜色 == "红色":
        color_name = "red"
    elif 颜色 == "粉红色":
        color_name = "light_purple"
    elif 颜色 == "黄色":
        color_name = "yellow"
    elif 颜色 == "白色":
        color_name = "white"
    return color_name

if __name__ == "__main__":
    随机 = input("是否使用随机字符?(是、否):")
    if 随机 == "是":
        obfuscated = True
        bold = False
        italic = False
        underlined = False
        strikethrough = False
        print("支持颜色:黑色、深蓝色、深绿色、湖蓝色、深红色、紫色、金色、灰色、深灰色、蓝色、绿色、天蓝色、红色、粉红色、黄色、白色")
        颜色 = input("请输入颜色(请输入单字,例如‘红色’、‘黄色’、‘绿色’等,需要加‘色’字):")
        if 颜色 == "黑色":
            color_name = "black"
        elif 颜色 == "深蓝色":
            color_name = "dark_blue"
        elif 颜色 == "深绿色":
            color_name = "dark_green"
        elif 颜色 == "湖蓝色":
            color_name = "drak_aqua"
        elif 颜色 == "深红色":
            color_name = "dark_red"
        elif 颜色 == "紫色":
            color_name = "dark_purple"
        elif 颜色 == "金色":
           color_name = "gold"
        elif 颜色 == "灰色":
            color_name = "gray"
        elif 颜色 == "深灰色":
            color_name = "dark_gray"
        elif 颜色 == "蓝色":
            color_name = "blue"
        elif 颜色 == "绿色":
            color_name = "green"
        elif 颜色 == "天蓝色":
            color_name = "aqua"
        elif 颜色 == "红色":
            color_name = "red"
        elif 颜色 == "粉红色":
            color_name = "light_purple"
        elif 颜色 == "黄色":
            color_name = "yellow"
        elif 颜色 == "白色":
            color_name = "white"
        text = input("请输入一个与随机字符串等宽的字符串:")
    else:
        obfuscated = False
        color_name = user_input()
    json_data = generate_json_data(text, color_name, bold, italic, underlined, obfuscated, strikethrough)
    print("生成的JSON数据为:")
    print(json_data.decode())
    input()

该代码使用 Python 生成带格式的 JSON 数据,支持文本颜色、粗体、斜体、下划线、删除线和随机字符串。用户可以通过输入文字文本、颜色、格式等信息来生成想要的 JSON 数据。

使用方法:

  1. 运行 Python 代码。
  2. 按照提示输入文字文本、颜色、格式等信息。
  3. 代码会生成包含格式信息的 JSON 数据。

特点:

  • 支持多种文本颜色。
  • 支持粗体、斜体、下划线和删除线格式。
  • 支持随机字符串功能,可以生成与输入字符串等宽的随机字符串。
  • 生成的 JSON 数据可用于各种应用程序。

示例:

假设用户输入以下信息:

  • 文字文本:Hello World!
  • 颜色:红色
  • 粗体:是
  • 斜体:否
  • 下划线:是
  • 删除线:否

代码会生成以下 JSON 数据:

{"text": "Hello World!", "color": "red", "bold": true, "italic": false, "underlined": true, "strikethrough": false, "obfuscated": false}

该 JSON 数据可以用于各种应用程序,例如,将文本渲染到网页上,或在应用程序中显示带格式的文本。

Python 生成带格式的 JSON 数据

原文地址: https://www.cveoy.top/t/topic/oSMr 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录