情景是這樣的:在C#中調(diào)用python腳本進(jìn)行post請(qǐng)求,python腳本中使用了requests包。
Python的開發(fā)環(huán)境我們有比較多的選擇,pycharm、sublime text等等。但是作為.net平臺(tái)的Python語言ironPython,可以和C#交互,讓編程更活泛。
ironPython本身其實(shí)就是一個(gè)python的開發(fā)環(huán)境,我的電腦上還裝有python2.7和pycharm,開始的時(shí)候使用pycharm寫的,本來的想法是用VS直接調(diào)用就可以了。但是后來才明白這三者的關(guān)系。
pycharm起到的左右就是一個(gè)純編輯器的作用。在VS里面加載了寫的.py文件之后,相當(dāng)于把這個(gè).py文件內(nèi)部的代碼,直接用ironpython解析一遍。
所以,pycharm中所寫的import requests(或者其他的,只要不是自身支持的)都會(huì)報(bào)錯(cuò)!出現(xiàn) module' object has no XXXX
現(xiàn)在回想一下,在pycharm中也不是直接import就ok,也是先需要安裝先從菜單欄找到安裝第三方庫的地方安裝完了之后,才能import。
所以需要在ironpython中執(zhí)行等效的操作。
下面說明python中的sys模塊: sys模塊提供了一系列有關(guān)Python運(yùn)行環(huán)境的變量和函數(shù)。
sys.path?
path是一個(gè)目錄列表,供Python從中查找第三方擴(kuò)展模塊。在python啟動(dòng)時(shí),sys.path根據(jù)內(nèi)建規(guī)則、PYTHONPATH變量進(jìn)行初始化。
在iron python中默認(rèn)的sys.path是ironpython的安裝路徑下的lib,而之前用pycharm安裝的庫是安裝在了python2.7的lib中。
所以要在文件的開頭加上
import sys sys.path.append(r'C:\Python27\Lib') #r是禁止轉(zhuǎn)義字符
這樣之后,ironpython就可以順著sys新增的這個(gè)path找到庫了。
在這些操作中,我感觸最深的是,要想弄清楚這些問題,不是要到網(wǎng)上去找代碼復(fù)制粘貼,而是專注于理解面對(duì)的是什么問題,每個(gè)問題的對(duì)象之間的邏輯關(guān)系是什么,從而找出來哪里邏輯錯(cuò)了,找出來問題出在哪里,對(duì)癥下藥,才能又快又好的解決問題。無頭蒼蠅一般的不斷的轉(zhuǎn)換方法,尋找盡可能現(xiàn)成的代碼,終究是浪費(fèi)時(shí)間,就算是找到了代碼,最后也是一無所獲,等問題稍微變變樣子,就蒙蔽了。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
