1個GUI界面,隨機生成若干姓名並保存為Excel,python如何實現?

2020-12-05 python高手養成

前面內容,我們詳細介紹了如何使用Python生成一定數量的隨機姓名。

生成一些隨機姓名

如何用Python生成若干個隨機姓名?男女取名有方法,不能千篇一律

之前,也提到過,我們在一些項目中,需要若干個隨機姓名,為了節省我們的測試時間,讓測試更加逼真,就定義了一個函數來生成隨機姓名。如下圖

姓名列是我們利用程序隨機生成的

如何將我們定義函數生成的隨機姓名寫入到Excel表格中呢?這就是我們今天要利用Python實現的效果。

如何實現

首先,我們生成一個GUI界面,接收用戶對於隨機姓名的一些個性化定製。然後,利用我們之前定義的類,來生成指定的隨機姓名;最後,我們將生成的隨機姓名存儲到Excel表格中。廢話不多說,直接開始吧。

開始吧

01通過GUI界面控制參數

這一內容相對來說很簡單。我們使用GUI界面來獲取用戶輸入相關設置(當然,還可以選擇控制臺方式),GUI界面看起來相對直觀一點。我們來看下界面效果。

程序運行效果

我們在界面中,將需要生成的隨機姓名的各個參數屬性進行設置。GUI界面講過很多了,PyQt5和tkinter等的介紹,之前也有很多內容,下面是一些有意思的案例:

Python內置庫並非一無是處,用tkinter也可繪製簡單漂亮的散點圖

圖形界面編程技巧,用Python中PyQt5庫快速創建一個應用程式框架

Excel表格搬到Python界面上?可以實現!結合PyQt5的QTabWidget類

等等,還有很多,大家添加關注後自己看往期的博文。今天,我們直接利用tkinter來生成這個簡單的界面,附上部分原始碼。

部分原始碼

需要說明的是,界面中,當選中固定姓氏複選框後,界面中彈出固定姓氏文本框,這樣的效果如何實現呢?

界面效果及部分代碼展示

別著急,其實原理很簡單,利用控制項的pack()和pack_forget()方法之間進行切換,即可暫時隱藏一些控制項。

02如何獲取界面設置內容

先來看下上一篇中定義的類和我們界面之間的關係。

如何使用定義的類

那麼,應用就簡單了,我們從界面中獲取相應的數據,然後直接傳入實例方法中,將相關屬性設置後,即可生成我們需要的隨機姓名了。部分代碼如下。

如何獲取並利用GUI界面設置的參數

03如何寫入到Excel表格中

數據寫入Excel表格的相關內容,我們前面也介紹了不少。感興趣的小夥伴自己找吧,裡面有很多案例哦。下面,直接上部分代碼。

如何將data數據保存到Excel中

04造輪子

等等,有點亂了,上面這些內容如何整合到一起呢?把開始的思路理一遍就可以了。附上原始碼,獲取方式很簡單。關注我,私信回復「隨機姓名xls」即可。大家下載原始碼自己看哦。

好了,今天的內容就到這裡了,喜歡Python編程的小夥伴關注我,後續會有更多精彩實例哦。

轉載請註明出處,百家號:Python高手養成

相關焦點

  • 如何用Python生成若干個隨機姓名?男女取名有方法,不能千篇一律
    今天,我們看下如何利用前面生成的這3個Excel表格。用Python從Excel中獲取需要內容我們利用前面生成的兩個Excel表格內容,隨機生成若干個我們需要的姓名。如何隨機生成名字對於這個問題,思路如下:確定是男生名字還是女生名字;確定是單字還是雙字;確定姓氏是否固定。
  • python數據分析-生成隨機數據文件
    自己練習的話,除了可以去一些公開的數據網站下載一些數據外,也可以自己隨機生成一些數據,下面就來自己生成隨機500名學生成績,為之後後面數據分析使用做準備。數據格式如下整個數據一共有6個類型,分別是["姓名","班級","性別","語文","數學","英語"]。
  • 轉載 | 如何使用 python 提取 pdf 表格及文本,並保存到 excel
    以 NBA 2020-2021 常規賽數據作為範例, pdf 表格如下# 導入 pdfplumberimport pdfplumber# 讀取 pdf 文件,保存為 pdf 實例pdf =  pdfplumber.open("E:\\nba.pdf") # 訪問第二頁first_page = pdf.pages[1]
  • 零基礎學習python GUI編程(PyQt)系列之6:用pandas操作excel
    通過前面的介紹,我們已經了解了對兩個文本文件如何進行比較,今天我們將其換成excel表格文件,對excel文件中的學生成績進行排名。今天我們就藉助python來對excel的數據進行排名,具體操作如下:首先,我們需要進入Qt Designer新增一個按鈕來承載該功能(如何配置及其使用Qt Designer前面章節有介紹),將該承載按鈕的對象名修改為Rank,保存該修改。如下圖。
  • python GUI界面設計的那些事(三)
    python GUI界面設計的那些事python GUI界面設計的那些事(二)GUI程序其實和普通程序其實就是多了一個界面,而最麻煩的就是用代碼實現設計的GUI界面。通常設計界面我們會有如下幾個步驟:1.首先會確定程序的功能。2.然後確定使用哪些組件3.之後手繪一個大概的界面布局。
  • excel隨機數函數是什麼?excel怎樣生成隨機數?
    本篇將介紹excel隨機數函數是什麼?excel怎樣生成隨機數?有興趣的朋友可以了解一下!一、前言excel是我們工作中很常用的一款表格製作工具,它不僅僅只是用來製作表格,它還能對表格中的數據進行處理(比如:運算、排序、篩選等)。
  • 拿Python給老師做個隨機點名系統
    一、實現隨機點名# -*- coding: UTF-8 -*-"""@File    :隨機點名系統.py@Author  :葉庭雲@Date    :2020/9/18 18:55"""import tkinter as tkfrom pandas import read_excel
  • Excel實現信息管理系統之數據錄入界面設計步驟詳解
    本身excel就是一款功能強大的數據信息管理和分析軟體,我們如果在它的基礎上在設計信息管理的功能感覺有點多此一舉。但是大家仔細想想,我們在excel錄入數據時,很多時候都是在單元格中直接輸入,亦或者使用excel記錄單錄入數據,然後再進行數據處理,這種方式對於大眾來講非常簡單快捷。但是如果我們處理的數據量大,錄入數據時有若干列,或者多人錄入時,這樣直接輸入真的會很便捷嗎?
  • python和scratch生成隨機不相同的十個數
    scratch生成10個隨機數很簡單,循環10次,循環裡面每次獲取一次1-10範圍內的一個隨機數。可以結果,出現了相同的數字,不符合我們的要求。第一種方法要解決這個問題,第一種方法,就是在加入前,先判斷這個列表裡面是否有這個數字,沒有就加入,直到裡面填滿10個數,因為不相同,所以也就是1-10範圍內的隨機且不同的10個數了。這裡新創建了一個temp的變量,為了判斷是否存在這個值,需要先將這個隨機值保存下來。
  • python生成excel文件的三種方式
    來源:經授權轉自 AI碼科技(ID:eleven_bmw)作者 :臭榴槤在我們做平常工作中都會遇到操作excel,那麼今天寫一篇,如何通過python操作excel當然python操作excel的庫有很多,比如pandas,xlwt/xlrd,openpyxl等,每個庫都有不同的區別,具體的區別,大家一起來看看吧~xlrd是對於Excel進行讀取,xlrd 操作的是
  • Python 實現批量分類匯總並保存xlsx文件
    上一篇文件用VBA介紹了如何實現一鍵按列分類匯總並保存單獨文件,代碼有幾十行,而且一旦數據量多了,效果可能不盡如人意。
  • 用ExcelPython在Excel中調用Python
    這篇文章我將展示你如何去使用它。背景雖然excel的市場地位正日益面臨免費的(OpenOffice)和雲軟體(Google Sheets)的挑戰和逐漸取代的風險,但是Excel依然是現在辦公環境中,使用範圍最廣、用戶界面友好的數據處理軟體。
  • WPS Excel:巧用隨機函數rand和randbetween生成各種數據
    rand和randbetween函數的本職工作是產生隨機小數和隨機整數。然而,應用巧妙的話,還可以獲取隨機姓名、隨機時間,常見的抽獎神器、點菜神器、選擇困難終結器等都可以用它們來完成。基礎用法這兩個函數都非常簡單,「rand()」沒有參數,返回0到1之間的小數,因此「rand()*100」可以得到0到100之間的小數;randbetween函數有兩個參數,分別是最小值和最大值,使用它可以獲得這兩個值之間的整數。
  • 利用Python隨機生成100道加法題
    本文我們將利用python實現一個很有意思的功能:隨機生成100道加法題。首先給出效果圖:代碼很簡單:雖然代碼看上去有很多的行,但是核心代碼就是4、5兩行。其中第4行是隨機生成100對整數,並保存為tuple類型,如圖所示:第5行是將兩個隨機整數轉換為加法的形式,如圖所示:其中代碼中的random.randint表示生成隨機整數,下面我們就對random模塊進行詳細介紹。
  • PDF轉EXCEL,python的這個技能知道嗎?
    當在pdf上看到自己想用的表格,卻無法將其複製下來的時候,只能默默地打開excel對照著pdf表格的形式敲打出來,既費時又費力!這裡介紹如何用python程序將pdf上的表格自動轉化為excel表!1.使用的庫簡單介紹一下要使用的庫:pdfplumber 和xlwt1.pdfplumberpdfplumber使用來解析pdf的文字與表格。
  • PyAutoGUI:自動化鍵鼠操作的Python類庫
    pip install pyautogui用pip安裝這裡順便介紹一下PyAutoGUI的坐標系統,和一些常見的繪圖坐標系統相同,左上角為原點,向右是x軸正方向,向下是y軸正方向。import pyautoguidistance = 100pyautogui.moveTo(400, 300)while distance > 0: pyautogui.drag(distance, 0, duration=0.1) distance -= 5 pyautogui.drag(0, distance, duration=0.1
  • excel隨機取整函數:如何快速生成低齡口算算式
    在excel界流傳著這樣一句話「excel除了不能生孩子,其他的事情都能幹」。雖然看著有點誇張,但這也足以反映出excel的強大之處。今天我們的苗老師將給大家分享一個用excel教孩子學算術的小技巧,是不是很好奇呢?趕緊來看看吧!
  • python生成隨機密碼,包含大小寫和數字
    python 通過assic編碼格式生成隨機大小寫和數字密碼。儘可能減少庫的依賴實現目標,這裡只含一個隨機庫,用assic編碼隨機在轉碼回來, 如果要包含特殊字符,直接用65-123即可。當然,並沒有強制密碼同時包含大小寫和數字,如果要實現,第一步,只要分開在3個列表取至少一個的個數組成新的列表。第二步,新列表再隨機排列出密碼即可。
  • 「每日一練」巧用python生成隨機數
    題目python中生成隨機整數、隨機小數、0--1之間小數方法代碼先上代碼~運行效果題目詳述程序分析:>隨機整數:random.randint(a,b),生成區間內的整數隨機小數:習慣用numpy庫,利用np.random.randn(5)生成5個隨機小數0-1隨機小數:random.random(),括號中不傳參第一行:import
  • pandas案例1:隨機生成客戶基本信息表
    ,默認為en_US,只有使用了相關文化,才能生成相對應的隨機信息(比如:名字,地址,郵編,城市,省份等)。第二句:df = pd.DataFrame({"客戶姓名":[f.name() for i in range(5)],使用pandas創建一個數據表,{}內容為創建一個字典,鍵值對為列名:每列隨機生成的內容列表,fake.name()隨機生成姓名列表,for i in range 5,隨機生成五行數據。