最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python代碼打包為exe的六種主流方法及避坑指南

 更新時(shí)間:2025年11月19日 10:21:32   作者:遺憾是什么.  
在 Python 開發(fā)中,我們常遇到這樣的需求:將寫好的腳本分享給他人,但對(duì)方?jīng)]有安裝 Python 環(huán)境,也不懂如何配置依賴,此時(shí),將 Python 代碼打包成exe就成了最佳解決方案,本文將詳細(xì)講解 6 種主流的 Python 打包工具,需要的朋友可以參考下

前言

在 Python 開發(fā)中,我們常遇到這樣的需求:將寫好的腳本分享給他人,但對(duì)方?jīng)]有安裝 Python 環(huán)境,也不懂如何配置依賴。此時(shí),將 Python 代碼打包成 Windows 可執(zhí)行文件(.exe)就成了最佳解決方案。本文將詳細(xì)講解 6 種主流的 Python 打包工具,從基礎(chǔ)操作到進(jìn)階配置,幫你徹底搞定 exe 打包問(wèn)題。

一、打包核心原理:為什么 Python 腳本能變成 exe?

在開始學(xué)習(xí)具體工具前,我們先搞懂一個(gè)關(guān)鍵問(wèn)題:純文本的 Python 腳本,是如何變成可執(zhí)行的 exe 文件的?

本質(zhì)上,Python 打包工具的核心邏輯分為兩步:

  1. 依賴收集:掃描腳本中用到的所有模塊(包括 Python 標(biāo)準(zhǔn)庫(kù)、第三方庫(kù)如 numpy/pandas),將這些依賴文件與腳本一起打包;
  2. 環(huán)境封裝:在打包文件中嵌入一個(gè) “迷你 Python 解釋器”,當(dāng)用戶運(yùn)行 exe 時(shí),這個(gè)內(nèi)置解釋器會(huì)自動(dòng)加載腳本和依賴,無(wú)需系統(tǒng)安裝 Python。

不同工具的差異主要體現(xiàn)在:打包體積、啟動(dòng)速度、跨平臺(tái)支持、配置靈活性等方面。下面我們按 “新手友好度” 排序,逐一講解各工具的使用方法。

二、新手首選:PyInstaller(最主流、支持最全)

PyInstaller 是目前使用最廣泛的 Python 打包工具,支持 Python 3.7-3.12,能打包控制臺(tái)程序、GUI 程序(如 Tkinter、PyQt),甚至包含數(shù)據(jù)文件的復(fù)雜項(xiàng)目。

1. 基礎(chǔ)使用步驟

步驟 1:安裝 PyInstaller

打開命令提示符(CMD)或終端,輸入以下命令:

# 基礎(chǔ)安裝(推薦使用國(guó)內(nèi)源加速)

pip install pyinstaller -i https://pypi.tuna.tsinghua.edu.cn/simple

步驟 2:簡(jiǎn)單打包(控制臺(tái)程序)

假設(shè)我們有一個(gè)簡(jiǎn)單的 Python 腳本hello.py:

# hello.py

print("Hello, Python打包世界!")

input("按回車鍵退出...") # 防止exe運(yùn)行后直接閃退

在腳本所在文件夾打開 CMD,輸入打包命令:

# 基本語(yǔ)法:pyinstaller [選項(xiàng)] 腳本文件名

pyinstaller hello.py

執(zhí)行完成后,文件夾會(huì)生成 3 個(gè)目錄:

  • build/:打包過(guò)程中的臨時(shí)文件(可刪除);
  • dist/:最終生成的 exe 文件在這個(gè)目錄下(dist/hello.exe);
  • hello.spec:打包配置文件(后續(xù)進(jìn)階配置用)。

步驟 3:打包 GUI 程序(以 Tkinter 為例)

如果腳本是 GUI 程序,需要添加-w選項(xiàng)(取消控制臺(tái)窗口),避免運(yùn)行時(shí)彈出黑色命令框。

示例gui_app.py:

import tkinter as tk

from tkinter import messagebox

root = tk.Tk()

root.title("Python GUI打包測(cè)試")

root.geometry("300x200")

def show_msg():

messagebox.showinfo("提示", "GUI程序打包成功!")

btn = tk.Button(root, text="點(diǎn)擊測(cè)試", command=show_msg)

btn.pack(pady=50)

root.mainloop()

打包命令:

pyinstaller -w gui_app.py

2. 進(jìn)階配置:自定義圖標(biāo)、打包數(shù)據(jù)文件

(1)添加自定義圖標(biāo)

需要準(zhǔn)備一個(gè).ico格式的圖標(biāo)文件(可通過(guò)在線工具將圖片轉(zhuǎn)為 ico),使用-i選項(xiàng)指定圖標(biāo):

# 語(yǔ)法:pyinstaller -i 圖標(biāo)路徑 腳本名

pyinstaller -i my_icon.ico -w gui_app.py

(2)打包數(shù)據(jù)文件(如圖片、配置文件)

如果腳本依賴外部文件(如data.txt、image.png),直接打包會(huì)導(dǎo)致 exe 找不到文件。此時(shí)需要通過(guò)--add-data選項(xiàng)指定文件路徑:

# Windows系統(tǒng)語(yǔ)法:--add-data "源文件路徑;目標(biāo)路徑"(分號(hào)分隔)

# 示例:將當(dāng)前目錄的data.txt打包到exe同級(jí)的data文件夾

pyinstaller -w --add-data "data.txt;data/" --add-data "images/*;images/" gui_app.py

(3)打包為單文件(方便傳輸)

默認(rèn)打包會(huì)生成多個(gè)依賴文件,使用-F(或--onefile)選項(xiàng)可將所有內(nèi)容壓縮為單個(gè) exe 文件:

# 單文件+無(wú)控制臺(tái)+自定義圖標(biāo)

pyinstaller -F -w -i my_icon.ico gui_app.py

3. PyInstaller 優(yōu)缺點(diǎn)

優(yōu)點(diǎn)缺點(diǎn)
支持所有 Python 主流版本和框架單文件打包后啟動(dòng)速度較慢
配置簡(jiǎn)單,新手易上手生成的 exe 體積較大(默認(rèn)包含完整依賴)
支持打包數(shù)據(jù)文件、自定義圖標(biāo)部分冷門庫(kù)可能出現(xiàn)兼容性問(wèn)題

三、輕量級(jí)選擇:cx_Freeze(跨平臺(tái)、體積小)

cx_Freeze 是另一個(gè)成熟的打包工具,最大特點(diǎn)是跨平臺(tái)(支持 Windows、Mac、Linux),且生成的 exe 體積比 PyInstaller 略小,適合對(duì)文件大小敏感的場(chǎng)景。

1. 基礎(chǔ)使用步驟

步驟 1:安裝 cx_Freeze

pip install cx_Freeze -i https://pypi.tuna.tsinghua.edu.cn/simple

步驟 2:快速打包(自動(dòng)生成配置)

對(duì)于簡(jiǎn)單腳本hello.py,直接執(zhí)行以下命令:

# 基本語(yǔ)法:cxfreeze 腳本名 --target-dir 輸出目錄

cxfreeze hello.py --target-dir dist

執(zhí)行后,dist/目錄會(huì)生成hello.exe和相關(guān)依賴文件(無(wú)臨時(shí)文件,比 PyInstaller 更簡(jiǎn)潔)。

步驟 3:打包 GUI 程序(取消控制臺(tái))

需要通過(guò)--base-name指定 GUI 基礎(chǔ)庫(kù),Windows 下使用Win32GUI:

# 打包Tkinter GUI程序(無(wú)控制臺(tái))

cxfreeze gui_app.py --target-dir dist --base-name Win32GUI

2. 進(jìn)階配置:通過(guò)setup.py自定義

對(duì)于復(fù)雜項(xiàng)目,建議編寫setup.py配置文件,方便重復(fù)打包。示例:

# setup.py

import sys

from cx_Freeze import setup, Executable

# 要打包的腳本

script_name = "gui_app.py"

# 配置exe屬性

base = None

if sys.platform == "win32":

base = "Win32GUI" # Windows下GUI程序取消控制臺(tái)

executables = [Executable(

script=script_name,

base=base,

icon="my_icon.ico", # 自定義圖標(biāo)

target_name="my_gui_app.exe" # 輸出exe文件名

)]

# 打包配置

setup(

name="Python GUI App",

version="1.0",

description="cx_Freeze打包的Python GUI程序",

executables=executables,

# 打包數(shù)據(jù)文件(源路徑:目標(biāo)路徑)

options={

"build_exe": {

"include_files": [

("data.txt", "data/"),

("images/", "images/")

],

"packages": ["tkinter"] # 顯式指定需要包含的庫(kù)

}

}

)

執(zhí)行打包命令:

python setup.py build

生成的 exe 文件會(huì)放在build/exe.win-amd64-3.x/目錄下(根據(jù) Python 版本和系統(tǒng)架構(gòu)變化)。

3. cx_Freeze 優(yōu)缺點(diǎn)

優(yōu)點(diǎn)缺點(diǎn)
跨平臺(tái)支持好,Windows/Mac/Linux 通用配置文件編寫比 PyInstaller 略復(fù)雜
生成的 exe 體積較小,啟動(dòng)速度快對(duì)部分第三方庫(kù)(如 PyQt6)兼容性不如 PyInstaller
無(wú)臨時(shí)文件,打包目錄更簡(jiǎn)潔文檔不如 PyInstaller 豐富

四、GUI 打包專用:PyQtDeploy(PyQt 程序首選)

如果你開發(fā)的是 PyQt/PySide GUI 程序,PyQtDeploy是專門為此設(shè)計(jì)的打包工具,能優(yōu)化 Qt 庫(kù)的打包,減少文件體積,還支持交叉編譯(如在 Windows 上打包 Mac 版本)。

1. 安裝步驟

PyQtDeploy 依賴 PyQt5/PyQt6 和 Qt 工具鏈,安裝前需先確保已安裝 PyQt:

# 安裝PyQt6(根據(jù)你的項(xiàng)目版本選擇PyQt5/PyQt6)

pip install pyqt6 pyqt6-tools

# 安裝PyQtDeploy

pip install pyqtdeploy

2. 基礎(chǔ)使用步驟

步驟 1:創(chuàng)建項(xiàng)目配置文件

打開命令提示符,進(jìn)入腳本所在目錄,執(zhí)行:

pyqtdeploy

會(huì)彈出圖形化配置界面,按以下步驟操作:

  1. 點(diǎn)擊 “New” 創(chuàng)建新項(xiàng)目,選擇保存路徑(如my_project.pdy);
  2. 在 “Sources” 標(biāo)簽頁(yè),點(diǎn)擊 “Add” 添加要打包的 Python 腳本(如gui_app.py);
  3. 在 “Packages” 標(biāo)簽頁(yè),勾選項(xiàng)目依賴的庫(kù)(如PyQt6、tkinter,工具會(huì)自動(dòng)檢測(cè),可手動(dòng)補(bǔ)充);
  4. 在 “Targets” 標(biāo)簽頁(yè),選擇目標(biāo)平臺(tái)(如Windows),設(shè)置輸出目錄和 exe 文件名;
  5. 在 “Icons” 標(biāo)簽頁(yè),添加自定義圖標(biāo)(支持.ico 格式)。

步驟 2:生成打包文件

配置完成后,點(diǎn)擊 “Generate” 生成 Makefile 或 Visual Studio 項(xiàng)目文件,然后點(diǎn)擊 “Build” 開始打包。

最終生成的 exe 文件會(huì)包含優(yōu)化后的 Qt 庫(kù),體積比 PyInstaller 打包的 PyQt 程序小 30% 左右,且運(yùn)行更穩(wěn)定。

3. PyQtDeploy 優(yōu)缺點(diǎn)

優(yōu)點(diǎn)缺點(diǎn)
專門優(yōu)化 PyQt/PySide 程序,兼容性最佳僅支持 PyQt/PySide 項(xiàng)目,通用性差
生成的 exe 體積小,Qt 庫(kù)打包更高效安裝依賴多,配置步驟較復(fù)雜
支持交叉編譯,跨平臺(tái)打包方便對(duì)非 Qt 項(xiàng)目無(wú)用

五、其他實(shí)用工具:3 種特殊場(chǎng)景選擇

除了上述 3 種主流工具,還有 3 個(gè)工具適合特定場(chǎng)景,我們簡(jiǎn)單介紹它們的使用場(chǎng)景和核心特點(diǎn):

1. nuitka:將 Python 編譯為 C 代碼(速度最快)

nuitka 的原理與其他工具不同:它會(huì)先將 Python 代碼編譯為 C 代碼,再編譯為 exe 文件,因此運(yùn)行速度極快,且反編譯難度高(適合商業(yè)軟件)。

基礎(chǔ)使用:

# 安裝

pip install nuitka

# 打包控制臺(tái)程序

nuitka --standalone hello.py

# 打包GUI程序(取消控制臺(tái))

nuitka --standalone --windows-disable-console gui_app.py

# 打包單文件+自定義圖標(biāo)

nuitka --standalone --windows-disable-console --windows-icon-from-ico=my_icon.ico --onefile gui_app.py

優(yōu)缺點(diǎn):

優(yōu)點(diǎn)缺點(diǎn)
運(yùn)行速度比其他工具快 50% 以上打包時(shí)間長(zhǎng)(需編譯 C 代碼)
反編譯難度高,安全性好生成的 exe 體積較大(包含 C 編譯依賴)
支持所有 Python 語(yǔ)法和庫(kù)對(duì)部分動(dòng)態(tài)導(dǎo)入的代碼兼容性差

2. auto-py-to-exe:PyInstaller 可視化界面(新手零命令)

如果你討厭記命令行參數(shù),auto-py-to-exe 是 PyInstaller 的圖形化封裝工具,通過(guò)界面點(diǎn)擊即可完成配置,適合純新手。

基礎(chǔ)使用:

# 安裝

pip install auto-py-to-exe

# 啟動(dòng)圖形界面

auto-py-to-exe

啟動(dòng)后,按界面提示操作:

  1. 點(diǎn)擊 “Browse” 選擇要打包的 Python 腳本;
  2. 在 “Onefile” 選項(xiàng)選擇 “One File”(單文件)或 “One Directory”(多文件);
  3. 在 “Console Window” 選項(xiàng)選擇 “Window Based”(GUI 程序)或 “Console Based”(控制臺(tái)程序);
  4. 點(diǎn)擊 “Additional Files” 添加數(shù)據(jù)文件,“Icon” 選擇圖標(biāo);
  5. 點(diǎn)擊 “Convert .py to .exe” 開始打包。

優(yōu)缺點(diǎn):

優(yōu)點(diǎn)缺點(diǎn)
純圖形化操作,零命令行,新手友好本質(zhì)是 PyInstaller 的封裝,功能完全依賴 PyInstaller
配置項(xiàng)直觀,無(wú)需記參數(shù)復(fù)雜配置(如交叉編譯)支持不足
自動(dòng)生成打包日志,方便排查錯(cuò)誤啟動(dòng)速度較慢,占用內(nèi)存較高

3. briefcase:模擬原生應(yīng)用(適合桌面應(yīng)用分發(fā))

briefcase 的特點(diǎn)是將 Python 程序打包為原生系統(tǒng)格式(Windows 下為 exe,Mac 下為.dmg,Linux 下為.deb),支持自動(dòng)生成安裝向?qū)?,適合需要正式分發(fā)的桌面應(yīng)用。

基礎(chǔ)使用:

# 安裝

pip install briefcase

# 初始化項(xiàng)目(生成配置文件)

briefcase new

# 按提示輸入項(xiàng)目名、作者、描述等信息,選擇GUI框架(如Tkinter)

# 打包為Windows exe

briefcase build windows

# 生成Windows安裝程序(.msi)

briefcase package windows
優(yōu)點(diǎn)缺點(diǎn)
生成原生系統(tǒng)格式,支持安裝向?qū)?/td>打包步驟多,配置復(fù)雜
適合跨平臺(tái)桌面應(yīng)用正式分發(fā)生成的文件體積大,啟動(dòng)速度慢
支持自動(dòng)更新功能對(duì)小眾庫(kù)兼容性差

六、打包避坑指南:90% 新手會(huì)遇到的問(wèn)題

1. 問(wèn)題 1:exe 運(yùn)行閃退

  • 原因:控制臺(tái)程序執(zhí)行完后立即退出,或腳本存在錯(cuò)誤。
  • 解決方法
  • 控制臺(tái)程序:在腳本末尾添加input("按回車退出...");
  • 查看錯(cuò)誤:取消-w選項(xiàng),運(yùn)行 exe 時(shí)查看控制臺(tái)報(bào)錯(cuò)信息;
  • 檢查路徑:腳本中引用的文件路徑是否為相對(duì)路徑(避免使用絕對(duì)路徑)。

2. 問(wèn)題 2:exe 找不到數(shù)據(jù)文件

  • 原因:數(shù)據(jù)文件未正確打包,或腳本中路徑寫法錯(cuò)誤。
  • 解決方法
  • 確保通過(guò)--add-data(PyInstaller)或include_files(cx_Freeze)打包數(shù)據(jù)文件;
  • 腳本中使用動(dòng)態(tài)路徑獲取數(shù)據(jù)文件,示例:
import os

import sys

# 獲取exe所在目錄(兼容打包前后)

def get_resource_path(relative_path):

if hasattr(sys, '_MEIPASS'):

# 打包后,資源文件在sys._MEIPASS目錄下

return os.path.join(sys._MEIPASS, relative_path)

# 未打包時(shí),使用當(dāng)前目錄

return os.path.join(os.path.abspath("."), relative_path)

# 讀取數(shù)據(jù)文件

with open(get_resource_path("data/data.txt"), "r") as f:

content = f.read()

3. 問(wèn)題 3:打包后缺少第三方庫(kù)(如 numpy、pandas)

  • 原因:工具未自動(dòng)檢測(cè)到隱式導(dǎo)入的庫(kù)。
  • 解決方法
  • PyInstaller:使用--hidden-import選項(xiàng)顯式指定庫(kù),如pyinstaller --hidden-import numpy hello.py;
  • cx_Freeze:在setup.py的packages中添加庫(kù)名,如"packages": ["numpy", "pandas"]。

4. 問(wèn)題 4:exe 體積過(guò)大

  • 解決方法
  • 避免使用-F(單文件)選項(xiàng),多文件打包體積更小;
  • 用cx_Freeze替代 PyInstaller,體積可減少 20%-30%;
  • 清理項(xiàng)目依賴,刪除無(wú)用的庫(kù)導(dǎo)入(如import sys但未使用);
  • 使用UPX工具壓縮 exe(PyInstaller 支持--upx-dir選項(xiàng)指定 UPX 路徑)。

七、工具選擇建議:根據(jù)場(chǎng)景匹配最佳方案

場(chǎng)景推薦工具理由
新手入門、簡(jiǎn)單腳本auto-py-to-exe圖形化操作,零命令,無(wú)學(xué)習(xí)成本
控制臺(tái) / GUI 程序、兼容性優(yōu)先PyInstaller支持所有 Python 庫(kù),文檔豐富,社區(qū)問(wèn)題多
跨平臺(tái)需求、體積敏感cx_Freeze跨平臺(tái)支持好,體積小,啟動(dòng)速度快
PyQt/PySide GUI 程序PyQtDeploy專門優(yōu)化 Qt 庫(kù),體積小,運(yùn)行穩(wěn)定
商業(yè)軟件、速度優(yōu)先nuitka編譯為 C 代碼,運(yùn)行快,反編譯難
正式桌面應(yīng)用分發(fā)briefcase生成原生安裝包,支持自動(dòng)更新

八、總結(jié)

Python 打包 exe 的工具各有優(yōu)劣,沒(méi)有 “最好”,

以上就是Python代碼打包為exe的六種種主流方法及避坑指南的詳細(xì)內(nèi)容,更多關(guān)于Python代碼打包為exe的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 利用Python如何實(shí)時(shí)檢測(cè)自身內(nèi)存占用

    利用Python如何實(shí)時(shí)檢測(cè)自身內(nèi)存占用

    這篇文章主要介紹了利用Python如何實(shí)時(shí)檢測(cè)自身內(nèi)存占用的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • Python基礎(chǔ)之numpy庫(kù)的使用

    Python基礎(chǔ)之numpy庫(kù)的使用

    這篇文章主要介紹了Python基礎(chǔ)之numpy庫(kù)的使用,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)python基礎(chǔ)的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-04-04
  • pycharm 實(shí)現(xiàn)本地寫代碼,服務(wù)器運(yùn)行的操作

    pycharm 實(shí)現(xiàn)本地寫代碼,服務(wù)器運(yùn)行的操作

    這篇文章主要介紹了pycharm 實(shí)現(xiàn)本地寫代碼,服務(wù)器運(yùn)行的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-06-06
  • Python Opencv提取圖片中某種顏色組成的圖形的方法

    Python Opencv提取圖片中某種顏色組成的圖形的方法

    這篇文章主要介紹了Python Opencv提取圖片中某種顏色組成的圖形的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • Python生成可執(zhí)行文件.exe操作完整流程記錄

    Python生成可執(zhí)行文件.exe操作完整流程記錄

    .exe是文件擴(kuò)展名,帶有.exe擴(kuò)展名的文件名按下Enter鍵就可運(yùn)行,這篇文章主要給大家介紹了關(guān)于Python生成可執(zhí)行文件.exe操作完整流程的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-05-05
  • 如何使用Python的OpenCV庫(kù)處理圖像和視頻

    如何使用Python的OpenCV庫(kù)處理圖像和視頻

    基于opencv可以顯示圖片,并進(jìn)行相應(yīng)的處理,下面這篇文章主要給大家介紹了關(guān)于如何使用Python的OpenCV庫(kù)處理圖像和視頻的相關(guān)資料,需要的朋友可以參考下
    2022-10-10
  • Python中裝飾器和魔法方法的區(qū)別解析

    Python中裝飾器和魔法方法的區(qū)別解析

    在Python中,裝飾器(Decorators)和魔法方法(Magic Methods)是兩種不同的高級(jí)特性,分別服務(wù)于不同的目的,這篇文章主要介紹了Python中裝飾器和魔法方法的區(qū)別,需要的朋友可以參考下
    2024-03-03
  • 有關(guān)Tensorflow梯度下降常用的優(yōu)化方法分享

    有關(guān)Tensorflow梯度下降常用的優(yōu)化方法分享

    今天小編就為大家分享一篇有關(guān)Tensorflow梯度下降常用的優(yōu)化方法分享,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-02-02
  • Python?PEP8?代碼規(guī)范常見問(wèn)題及解決方法

    Python?PEP8?代碼規(guī)范常見問(wèn)題及解決方法

    最近換成?PyCharm?寫代碼總是會(huì)出現(xiàn)波浪號(hào),這才了解到?Python?的?PEP8?代碼規(guī)范,所以將常見的?PEP8?代碼規(guī)范問(wèn)題和解決方法記錄一下,養(yǎng)成良好的習(xí)慣,編寫規(guī)范的代碼
    2023-09-09
  • Python 字典一個(gè)鍵對(duì)應(yīng)多個(gè)值的方法

    Python 字典一個(gè)鍵對(duì)應(yīng)多個(gè)值的方法

    這篇文章主要介紹了Python 字典一個(gè)鍵對(duì)應(yīng)多個(gè)值的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09

最新評(píng)論

花垣县| 霞浦县| 五家渠市| 道孚县| 封丘县| 中阳县| 桓台县| 灵璧县| 河东区| 大悟县| 桐庐县| 贵南县| 招远市| 沐川县| 浦东新区| 桂东县| 永仁县| 萝北县| 镇雄县| 南靖县| 台东市| 博湖县| 东至县| 四会市| 视频| 莱阳市| 库车县| 满洲里市| 蓬莱市| 长春市| 涿州市| 房山区| 文成县| 芮城县| 舟曲县| 合阳县| 炎陵县| 乌鲁木齐市| 高要市| 扬中市| 新闻|