菜鳥學Python(11):在Django中怎麼下載任意型別的檔案?
f = open(filename)
data = f.read()
f.close()
response = HttpResponse(data,mimetype='application/octet-stream')
response['Content-Disposition'] ='attachment; filename=%s'% filename
return response
希望對別人有幫助,不會再走那麼久的彎路:)
開啟瀏覽器,輸入指定的網址,會有儲存檔案的對話方塊彈出來,那個時候的感覺太好了!
相關推薦
菜鳥學Python(11):在Django中怎麼下載任意型別的檔案?
查了一些資料,基本上都是在網頁上面展示一個檔案,或者下載一個已知檔案型別的檔案。那麼如果要下載未知檔案型別的檔案怎麼辦了?碰巧在google code上面搜到了一些程式碼,自己改裝一下,就可以用了;) f = open(filename)data = f.read()f.c
菜鳥學Python(17):用pymssql訪問mssql資料庫的儲存過程
要在linux下用python呼叫ms sql server的儲存過程,google一把,決定使用pymssql。但是文件很少,只有幾個最簡單的例子。看了網上這個例子後,才明白具體怎麼呼叫儲存過程。大概程式碼如下: con = pymssql.connect(host='1
菜鳥學Python(16):一些奇技(持久更新中)
1.eval的使用.偷師自ZP的程式碼:) >>> a = {'q':2,'d':3}>>> eval("a['q'"+"]")2>>> 非常有用的技巧,比如物件a有屬性name,這時候外面想到得到a的name屬性,於
菜鳥學Python(3):引用和引用引數
在Python.cn的郵件列表中看到有人問了一個問題: >>> a=[]>>> b={'num':0,'sqrt':0}>>> resurse=[1,2,3]>>>for i in resurse: b['num']=i b['sq
菜鳥學Python(10):初學JSON
>>> import simplejson>>> simplejson.dumps(['foo', {'bar': ('baz', None, 1.0, 2)}])'["foo", {"bar": ["baz", null, 1.0, 2]}]'>>>
菜鳥學Python(12):怎麼讀寫ini檔案
比如有一個檔案update.ini,裡面有這些內容:[ZIP]EngineVersion=0DATVersion=5127FileName=dat-5127.zipFilePath=/pub/antivirus/datfiles/4.x/FileSize=13481555Ch
Python從菜鳥到高手(11):列表的基礎操作
刪除 範圍 獲取 png john 修改列 以及 列表 -o 列表可以使用所有適用於序列的標準操作,例如索引、分片、連接和乘法。但列表還有一些屬於自己的操作,如修改列表本身的操作,這些操作包括元素賦值、元素刪除、分片賦值以及下一節要將的列表方法。 1
小白學 Python(11):基礎資料結構(元組)
人生苦短,我選Python 前文傳送門 小白學 Python(1):開篇 小白學 Python(2):基礎資料型別(上) 小白學 Python(3):基礎資料型別(下) 小白學 Python(4):變數基礎操作 小白學 Python(5):基礎運算子(上) 小白學 Python(6):基礎運算子(下)
Python從菜鳥到高手(3):聲明變量
ble href edi 一個 android 聲明變量 字符串類型 的人 重要 變量(variable)是Python語言中一個非常重要的概念。變量的主要作用就是為Python程序中的某個值起一個名字。類似於“張三”、“李四”、“王二麻子”一樣的人名,便於記憶。 ??在P
Python從菜鳥到高手(2):清空Python控制臺
cls stdout 聲明 交互 打開 成功 html 重新 指向 執行python命令會進入Python控制臺。在Python控制臺中可以用交互的方式執行Python語句。也就是執行一行Python語句,會立刻返回執行結果。 ??當Python控制臺輸入過多的Python
Python從菜鳥到高手(4):導入Python模塊
imp port fun code image 技術分享 pro 出版 麻煩 在Python代碼中導入模塊需要使用import語句,語法結構如下: import module_name ??引用模塊中函數的語法如下: module_name.function_name ??
Python從菜鳥到高手(5):數字
優先級 菜鳥 這一 轉換 介紹 href .com hex 包含 1 基礎知識 ??Python語言與其他編程語言一樣,也支持四則運算(加、減、乘、除),以及圓括號運算符。在Python語言中,數字分為整數和浮點數。整數就是無小數部分的數,浮點數就是有小數部分的數。例如,下
Python從菜鳥到高手(6):獲取用戶輸入、函數與註釋
依次 都是 正弦 .cn 應該 asc pri 控制臺 html 1. 獲取用戶輸入 要編寫一個有實際價值的程序,就需要與用戶交互。當然,與用戶交互有很多方法,例如,GUI(圖形用戶接口)就是一種非常好的與用戶交互的方式,不過我們先不討論GUI的交互
Python從菜鳥到高手(7):字符串
imageview ofo ror 如果 http 其實在 orien python語言 組合 1. 單引號字符串和轉義符 字符串與數字一樣,都是值,可以直接使用,在Python控制臺中直接輸入字符串,如"Hello World”,會按原樣
Python從菜鳥到高手(8):print函數、賦值與代碼塊
images rec 控制臺輸出 error enter sam 運算 賦值 編程語言 1.神奇的print函數 ??print函數相信讀者一定對它不陌生,因為在前面的章節,幾乎每個例子都使用了print函數,這個函數的功能就是在控制臺輸出文本。不過print在輸出文本時還
Python從菜鳥到高手(10):循環
ems 銀行卡 講解 條件表達式 gda while 依次 continue 大於等於 我們現在已經知道了如何使用if語句讓程序沿著不同的路徑執行,不過程序最大的用處就是利用CPU和GPU強大的執行能力不斷重復執行某段代碼,想想Google的Alph
Python從菜鳥到高手(12):通過索引操作序列元素
九月 輸出字符串 二維 多維 負數 輸入 數值 倒數 格式 1.定義序列 本文將介紹一下在Python語言中如何定義序列。定義序列的語法與Java中的數組類似,使用一對中括號將序列中的元素值括起來。下面的例子創建一個元素類型是字符串的序列,實現代碼如
Python從菜鳥到高手(13):分片(Slicing)
方式 ans 表示 獲取元素 nsh 通過 int 值類型 步長 分片操作是從序列A中獲取一個子序列B。序列A可以稱為父序列。從A中獲取B,需要指定B在A中的開始索引和結束索引,因此,分片操作需要指定兩個索引。 ??由於字符串可以看做是字符的序列,所以我們可以用序列的這個分
Python從菜鳥到高手(15):字符串格式化
添加 使用 s參數 一個 gre 引用 動態 值轉換 部分 1. 字符串格式化基礎 字符串格式化相當於字符串模板。也就是說,如果一個字符串有一部分是固定的,而另一部分是動態變化的,那麽就可以將固定的部分做成模板,然後那些動態變化的部分使用字符串格式化操作符(%) 替換。如一
Python從菜鳥到高手(16):創建和使用字典
tps 模板 映射 label 運算符 輸出結果 utf 轉換 系統 字典可以用下面的方式創建。 phoneBook = {"Bill":"1234", "Mike":"4321", "John":"6645","Mary":"7753"} 我們可以看到,一個字典是用一對大