1. 程式人生 > >python練習冊之14 15 16

python練習冊之14 15 16

第 0014 題: 純文字檔案 student.txt為學生資訊, 裡面的內容(包括花括號)如下所示:

{
    "1":["張三",150,120,100],
    "2":["李四",90,99,95],
    "3":["王五",60,66,68]
}

請將上述內容寫到 student.xls 檔案中,如下圖所示:

student.xls

  • 閱讀資料 騰訊遊戲開發 XML 和 Excel 內容相互轉換

第 0015 題: 純文字檔案 city.txt為城市資訊, 裡面的內容(包括花括號)如下所示:

{
    "1" : "上海",
    "2" : "北京",
    "3" : "成都"
}

請將上述內容寫到 city.xls 檔案中,如下圖所示:

city.xls

第 0016 題: 純文字檔案 numbers.txt, 裡面的內容(包括方括號)如下所示:

[
    [1, 82, 65535],
    [20, 90, 13],
    [26, 809, 1024]
]

請將上述內容寫到 numbers.xls 檔案中,如下圖所示:

numbers.xls

import json
import xlwt
from collections import OrderedDict


def run_1():

    with open('student.txt','r') as f:
        content = f.read()

    #轉化為json,注意轉化後的dict的元素位置可能和轉化前可能不一樣,因此需要ordereddict
    #loads()方法把str物件反序列化為json物件,自定義解碼器為ordereddict
    d = json.loads(content,object_pairs_hook=OrderedDict)
    print(d)
    #初始化xls檔案
    file = xlwt.Workbook()
    #新增sheet,工作表,名字為test
    table = file.add_sheet('test')
    for row ,i in enumerate(d):   #讀取所有字典,row為序號,i為字典關鍵字key
        table.write(row,0,i)    #寫入(行號,列號,key)
        for col,j in enumerate(d[i]):   #col為序號,j為value,有多個,需要迭代
            table.write(row,col+1,j)

    file.save('student.xls')



def run_2():
    with open('city.txt','r') as f:
        content = f.read()
    #同上
    d = json.loads(content,object_pairs_hook=OrderedDict)
    file = xlwt.Workbook()
    table = file.add_sheet('rest')
    for row ,i in enumerate(d):
        table.write(row,0,i)
        table.write(row,1,d[i])
    file.save('city.xls')


def run_3():
    with open('numbers.txt','r') as f:
        content = f.read()

    d = json.loads(content,object_pairs_hook=OrderedDict)
    file = xlwt.Workbook()

    table = file .add_sheet('test')
    for row , i in enumerate(d):
        for col, j in enumerate(i):
            table.write(row,col,j)

    file.save('number.xls')


if __name__ =="__main__":
    # run_1()
    run_2()
    run_3()


相關推薦

python練習14 15 16

第 0014 題: 純文字檔案 student.txt為學生資訊, 裡面的內容(包括花括號)如下所示: { "1":["張三",150,120,100], "2":["李四",90,99,95], "3":["王五",60,66,68] } 請

20170511 Python練習0000 將頭像右上角加上紅色的數字

figure 服務 .com 1.5 open 保存圖片 lan 顯卡驅動 type() 現在開始每天做一個Python小練習,第一個練習 #!/usr/bin/env python#-*- coding:utf8 -*-from PIL import Image, Ima

python練習 每天一個小程序

註釋 and ati 註意 繪圖 windows 操作 jpeg odi PIL庫學習鏈接:http://blog.csdn.net/column/details/pythonpil.html?&page=1 1 #-*-coding:utf-8-*- 2 _

python練習 每天一個小程序 第0002題

color == oot 關系型數據庫 auth creat user root mdb 1 #-*-coding:utf-8-*- 2 __author__ = ‘Deen‘ 3 ‘‘‘ 4 題目描述: 5 將 0001 題生成的 200 個激活碼

python練習 每天一個小程序 第0010題

rgb pytho 進行 lur return n) dom randint window # -*-coding:utf-8-*- ‘‘‘ 題目描述: 使用 Python 生成類似於下圖中的字母驗證碼圖片 思路: 運用PIL庫加random 隨機字母進行生成

python練習第一題

題目 做為 Apple Store App 獨立開發者,你要搞限時促銷,為你的應用生成啟用碼(或者優惠券),使用 Python 如何生成 200 個啟用碼(或者優惠券)? 解題思路 上網搜了一下生成隨機字串的方法,除了猜想中類似C的random()方法,令我驚訝的是uuid模組也可以起到隨機的作用,

python練習第零題

說明 這個是網上一些大佬做的一套練習題,總共有25題,訓練大家python在檔案讀取、文字處理、資料庫、網頁等方向的熟練度,十分有用。github地址在這: python 練習冊 每天一個小程式 上不了github的可以直接搜名字,應該能搜到。 我這個筆記集也是隻記了五道題。。。我大概多做了一兩題吧,

python練習第三題

題目 將 0001 題生成的 200 個啟用碼(或者優惠券)儲存到 Redis 非關係型資料庫中。 解題思路 難點是壓根不知道redis怎麼用。好在找到了一些文章快速學了些: 使用python操作redis python: redis介紹及簡單應用 python(十一)下:Redis安裝配置及使用詳解

python練習第二題

題目 將 0001 題生成的 200 個啟用碼(或者優惠券)儲存到 MySQL 關係型資料庫中。 解決思路 基本步驟應該是:讀取檔案 --> 解析字元 --> 開啟資料庫 --> 存入後關閉。其中涉及python操作mysql資料庫的我還不是很熟悉。 py3.6我是用pymysql作

python練習第四題

題目 任一個英文的純文字檔案,統計其中的單詞出現的個數。 解題思路 上網找了一下思路。首先要讀取文字,對文字進行處理——這裡的處理要包括去除空格及各個標點符號。處理好的文字就是一串單詞,可以用list儲存。接下來,就是統計list中各單詞的重複次數了,最簡單的想法,應該是一個個遍歷,將之前未出現的錄入一

python練習第五題

題目 你有一個目錄,裝了很多照片,把它們的尺寸變成都不大於 iPhone5 解析度 (1136*640)的大小。 解題思路 涉及到圖片的都要用到Image模組,讀取圖片然後解析,解析後的字串中某個地方表示圖片的解析度,可以依此來判斷是否符合標準——如果不符合,就需要將圖片等比例壓縮到一個恰好合適的大小。

Python-劍指offer(15,16)反轉連結串列,合併兩個連結串列

題目:輸入一個連結串列,反轉連結串列後,輸出新連結串列的表頭。 環境:Python2.7.3 # -*- coding:utf-8 -*- # class ListNode: # def _

2018/12/14.15.16作業

2018/12/14.15.16作業 1.編寫一個程式,實現從命令列引數輸入兩個字串型別的數值, 並計算輸出兩個數值的和。 [必做題] Scanner s = new Scanner(System.in); String str = s.next(); String str2

python練習0004題

在任意一個英文文件中,統計單詞出現的次數, 分析: 本題不是很難,單詞通常以空格隔開,但是有些單詞後面跟一些特殊符號,只需把這些特殊符號替換掉就可以了, 程式碼一 1 import re 2 3 file_name = 'code.txt' 4 5 lines_count = 0 6 wor

劍指offer:13.14.15.16.17 (12.27)

''' 13.調整陣列順序使奇數位於偶數前面 **題目:**輸入一個整數陣列,實現一個函式來調整該陣列中數字的順序,使得所有的奇數位於陣列的前半部分,所有的偶數位於位於陣列的後半部分, 並保證奇數和奇數,偶數和偶數之間的相對位置不變。 ''' class Solution: def reO

Python 練習,每天一個小程式(0004)

總的想法是讀檔案,將其餘字元過濾,使用字典結構來儲存結果,最後將結果儲存到本地的Excel檔案中 參考資料: # -*- coding: utf-8 -*- import re impo

Python 練習,每天一個小程式

第 0001 題: 做為 Apple Store App 獨立開發者,你要搞限時促銷,為你的應用生成啟用碼(或者優惠券),使用 Python 如何生成 200 個啟用碼(或者優惠券)? 第 0002 題: 將 0001 題生成的 200 個啟用碼(或者優惠券)儲存到

java 輸入一個矩陣,按照從外向裡以順時針的順序依次打印出每一個數字,例如,如果輸入如下矩陣: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 則依次打印出數字1,2,

題目描述 輸入一個矩陣,按照從外向裡以順時針的順序依次打印出每一個數字,例如,如果輸入如下矩陣: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 則依次打印出數字1,