Python導出Excel為Lua/Json/Xml實例教程(一):初識Python


Python導出Excel為Lua/Json/Xml實例教程(一):初識Python

相關鏈接:

Python導出Excel為Lua/Json/Xml實例教程(一):初識Python

Python導出Excel為Lua/Json/Xml實例教程(二):xlrd初體驗

Python導出Excel為Lua/Json/Xml實例教程(三):終極需求

一、Why

無論做什么事,一定有個理由,所以第一步,我來簡述一下Why,為什么會有這個需求。

做過游戲的朋友應該知道,游戲當中很多的數據都是通過策划配置在Excel表格中的,而為了使用excel表格中的數據,就需要把excel導出為程序可以識別的格式。

程序中用來存儲數據的格式一般為Xml和Json,當然,只要你開心,你也可以用二進制或是txt存儲。

無論是導出xml還是json還是其他,只要掌握了原理,導出什么都可以。由於我目前的項目是用Lua來寫手機游戲,我就以導出Lua為例來講解如何通過Python來導出Excel。

二、Python基礎

Python(英語發音:/ˈpaɪθən/), 是一種面向對象、解釋型計算機程序設計語言。

有Python基礎的朋友建議跳過此小節,進入后續文章。

正是因為Python簡單優雅,使用方便,因此博主選擇了它作為導出Excel的語言,當然,用PHP、GO、VBA等都能優雅地完成這個需求。

1.安裝Python

  • Windows:在Python官網下載對應的安裝包,然后安裝即可。
  • Macos:自帶2.7版本的python,so easy,

博主接下來是以基於Macos的環境實現並測試通過,windows環境並未實測。

2.HelloWorld!

  • 用你的魔法在桌面上創建一個叫"test.py"的文件
  • 在文件中寫上一行:print("HelloWorld")
  • 打開終端鍵入命令:python /Users/你的名字/Desktop/test.py
  • 輕敲回車,搞定。
print("HelloWorld")
    

下圖左側為代碼,右側為執行結果(截圖的時候不小心刪掉了部分代碼)。

HelloWorld

3.幾個要點

  • 語句結束無需分號
  • Python是用縮進來區分代碼段落
    (Python開發者有意讓違反了縮進規則的程序不能通過編譯,以此來強制程序員養成良好的編程習慣。並且Python語言利用縮進表示語句塊的開始和退出(Off-side規則),而非使用花括號或者某種關鍵字。增加縮進表示語句塊的開始,而減少縮進則表示語句塊的退出)
  • 縮進要嚴格統一,不能空格和TAB混用
    (如果遇到莫名其妙的編譯錯誤,一定要檢查這一條!博主就在這條上吃了虧。)
  • 若要在代碼中直接寫中文,需要加上一句# -*- coding: UTF-8 -*-
  • py是弱類型語言,變量無需類型申明

4.練習一:基本語法

  • int轉String:str(數字)
  • String轉int:int(字串)
  • if 語句:if 條件1 : 執行1 elif 條件2: 執行2 else: 執行3
  • for循環:for 元素 in 數組 : 執行循環 else: 循環結束執行
  • for循環:for i in range(1, 20, 3):(從1到20,以3為步長進行循環)
  • for循環的else可選的,如果循環未被break終止,則執行else塊中的語句。
  • continue和其他語言一樣是跳過后面的代碼,開始下一輪循環
# Author:Krisik
# 博客地址:http://www.cnblogs.com/krisirk/

# -*- coding: UTF-8 -*- 
# 這句話是讓你在本文件中直接寫中文

for i in range(1,20,3):
	if i % 2 == 0 :
		print("我是偶數:" + str(i))
	else:
		print("我是奇數:" + str(i))
else:
	print("for循環結束")
    

執行結果如下:

p2


**將代碼變形一下,再加上一個判斷和break,看看會發生什么**
# Author:Krisik
# 博客地址:http://www.cnblogs.com/krisirk/

# -*- coding: UTF-8 -*- 
# 這句話是讓你在本文件中直接寫中文

for i in range(1,20,3):
	if i == 16 :
		break
	elif i % 2 == 0 :
		print("我是偶數:" + str(i))
	else:
		print("我是奇數:" + str(i))
else:
	print("for循環結束")
    

執行結果如下:

p211

可以看到當循環到16,執行break以后,並沒有打印19,而且else語句塊也沒有執行了。

5.練習二:寫文件

  • 需要引入庫import os
  • 新建或者打開文件:file = open(路徑,'w')
  • 向文件中寫入數據:file.write('數據')(file為上一步新建的文件)
  • 寫入完畢,關閉文件:file.close()

接下來我們用python在桌面創建一個test.lua的文件,然后往里面寫入一個字符串

# Author:Krisik
# 博客地址:http://www.cnblogs.com/krisirk/

import os
file = open('/Users/kris/Desktop/test.lua','w')
file.write("Hello lua")
file.close()
    

執行過后,在桌面就會出現一個叫做test.lua的文件

p211

6.總結

到目前為止,我們已經掌握了python的基本用法,也能夠將數據寫入文件,下一篇我們將會開始操作excel文件。

更多鏈接:

Python導出Excel為Lua/Json/Xml實例教程(二):xlrd初體驗


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM