新聞中心
這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
創(chuàng)新互聯(lián)Python教程:asp后段如何調(diào)用python
在ASP中使用python腳本:

1.首先安裝好Active Python,它自帶了win32擴(kuò)展,省得自己裝了;
2.按照Active的附帶文檔說(shuō)明,在%Python_home%/lib/site_packages/win32comext/axscript/client/目錄中找到pyscript.py,雙擊運(yùn)行之,此步驟在IIS中安裝Python解釋引擎;
3.新建一個(gè)asp文件,文件頭用<%@ LANGUAGE = Python %>,告訴IIS此文件采用Python腳本;
4.剩下的就是按python語(yǔ)法編程了。
相關(guān)推薦:《Python基礎(chǔ)教程》
5.例子:訪問(wèn)Access:
<%@ LANGUAGE = Python %>
<%
#創(chuàng)建數(shù)據(jù)訪問(wèn)類的實(shí)例
myax=Cdb4Jet()
調(diào)用數(shù)據(jù)訪問(wèn)類的查詢方法,返回結(jié)果賦給rs
rs=myax.query('select * from [user]')
#以下這段注掉的代碼用來(lái)遍歷打印取回來(lái)數(shù)據(jù)的字段
#flds_dict={}
#for x in range(rs.Fields.Count):
# flds_dict[x]=rs.Fields.Item(x).Name
# Response.write(flds_dict[x] + "
")
#遍歷取回來(lái)的數(shù)據(jù)
while not myax.rs.EOF:
#把每行的第三個(gè)字段值輸出(字段序號(hào)從0開(kāi)始)
Response.write(rs.Fields[2].Value+"
")
#移動(dòng)到下一行
myax.rs.MoveNext()
#重新移回第一行
myax.rs.MoveFirst()
#再次遍歷
while not myax.rs.EOF:
#輸出每行的第二個(gè)字段值
Response.write(rs.Fields[1].Value+"
")
#移動(dòng)到下一行
myax.rs.MoveNext()
%>比較遺憾的是在Python中訪問(wèn)Recordset時(shí)我不知道怎么用字段名,只會(huì)用字段序號(hào)。
另外一個(gè)要注意的是訪問(wèn)access的表時(shí)必須用“[]”括起來(lái)。
6.上例中用到的access訪問(wèn)類:
<% # -*-coding:UTF-8-*- #這一句告訴python用UTF-8編碼 # COMMENT: Python的ACCESS訪問(wèn)模塊 #導(dǎo)入win32com模塊 import win32com #數(shù)據(jù)訪問(wèn)類定義 class Cdb4Jet: #構(gòu)造函數(shù),python的構(gòu)造函數(shù)不同于C++/C#或Java的構(gòu)造函數(shù),在執(zhí)行到__init__方法時(shí),實(shí)例已經(jīng)存在 def __init__(self): #win32com.client.Dispatch用于創(chuàng)建COM對(duì)象 #創(chuàng)建ADO的Connection數(shù)據(jù)連接對(duì)象 self.conn=win32com.client.Dispatch(r'ADODB.Connection') #DSN保存數(shù)據(jù)庫(kù)的訪問(wèn)連接串 self.DSN='PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=E:\wwwroot\csip\#news.mdb;' #打開(kāi)數(shù)據(jù)庫(kù) self.conn.Open(self.DSN) #創(chuàng)建ADO的Recordset數(shù)據(jù)集對(duì)象 self.rs=win32com.client.Dispatch(r'ADODB.Recordset') #定義查詢方法 def query(self,sql): #執(zhí)行Recordset對(duì)象的Open方法,從數(shù)據(jù)庫(kù)取回?cái)?shù)據(jù)集 self.rs.Open(sql,self.conn,1,1) #返回?cái)?shù)據(jù)集給調(diào)用者 return self.rs #定義非查詢方法 def execute(self,sql): #直接調(diào)用Connection對(duì)象的execute方法執(zhí)行sql語(yǔ)句,并把執(zhí)行結(jié)果返回給調(diào)用者 return self.conn.execute(sql) %>
文章題目:創(chuàng)新互聯(lián)Python教程:asp后段如何調(diào)用python
URL標(biāo)題:http://m.fisionsoft.com.cn/article/coiijjd.html


咨詢
建站咨詢
