連接 python 庫(kù)的方式與標(biāo)準(zhǔn)過程類似,無論是 c /Java/其他:
import sys import openpyxl from pyqt5 import qtwidgets from pyqt5.qt import qtablewidgetitem from pyqt5.qtwidgets import ( qapplication, qmainwindow, qpushbutton, qvboxlayout, qwidget, qtablewidget, )
由于缺乏python調(diào)試器,很難驗(yàn)證構(gòu)建的正確性和庫(kù)的存在。帶有操作系統(tǒng)提示的命令行 (cli) 非常有用。
def appication(): app=qapplication(sys.argv) window = qmainwindow() window.setwindowtitle("smart home") window.setgeometry(300, 250, 300, 200) window.show() sys.exit(app.exec_()) if __name__=="__main__": appication()
.py 文件擴(kuò)展名出現(xiàn)在當(dāng)您在終端中將文件作為命令運(yùn)行時(shí),構(gòu)建器從項(xiàng)目的位置路徑中提取:
- 補(bǔ)充主項(xiàng)目的文件,即描述圖形/集成結(jié)構(gòu)的庫(kù)和 xml(包括 mysql)
- 終端通常將可執(zhí)行文件的路徑存儲(chǔ)在計(jì)算機(jī)的系統(tǒng)存儲(chǔ)中,如archlinux。程序集本身會(huì)提取必要的庫(kù)(如果它們是標(biāo)準(zhǔn)的/您將它們放在那里)
- 因此,提前將所有必要的擴(kuò)展添加到根路徑
- 添加管理員安全設(shè)置的路徑,因?yàn)榘踩到y(tǒng)有時(shí)會(huì)顯式忽略未描述的異常(在設(shè)置路徑中執(zhí)行此操作)
lass MainWindow(QMainWindow): def __init__(self): super().__init__() self.setMinimumWidth(1200) self.setMinimumHeight(600) layout = QVBoxLayout() self.table = QTableWidget(self) self.table.setRowCount(4) self.table.setColumnCount(4) layout.addWidget(self.table) btn = QPushButton("Download") btn.clicked.connect(self.btn_click) layout.addWidget(btn) widget = QWidget() widget.setLayout(layout) self.setCentralWidget(widget) def btn_click(self): wb = load_workbook('./123.xlsx') # Get sheet names sheet = wb['Sheet1'] print(sheet.cell(row=2, column=1).value) for row in range(1, 5): for column in range(1, 5): item = QTableWidgetItem() item.setText(str(sheet.cell(row=row, column=column).value)) self.table.setItem(row-1, column-1, item) app = QApplication(sys.argv) window = MainWindow() window.show() app.exec()
我不太相信 Python 環(huán)境的圖形 shell;通常,它們使與文件的交互變得復(fù)雜。正確安裝帶有約定的庫(kù)可以更輕松地與代碼交互。級(jí)別越輕、越原始越好。進(jìn)化告訴現(xiàn)實(shí)——而不是相反。