在VS2017中用C#調(diào)用python腳本的實(shí)現(xiàn)
情景是這樣的:在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í)間,就算是找到了代碼,最后也是一無所獲,等問題稍微變變樣子,就蒙蔽了。
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Linux下使用python腳本執(zhí)行BCP導(dǎo)入導(dǎo)出方式
這篇文章主要介紹了Linux下使用python腳本執(zhí)行BCP導(dǎo)入導(dǎo)出方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01在 Python 中如何使用 Re 模塊的正則表達(dá)式通配符
這篇文章主要介紹了在 Python 中如何使用 Re 模塊的正則表達(dá)式通配符,本文詳細(xì)解釋了如何在 Python 中使用帶有通配符的 re.sub() 來匹配字符串與正則表達(dá)式,需要的朋友可以參考下2023-06-06Python分聃?之?dāng)?shù)字雨加入潘周聃運(yùn)動(dòng)曲線的詳細(xì)過程
相信各位同學(xué)最近一定被潘周聃刷屏和洗腦了,互聯(lián)網(wǎng)上也出現(xiàn)了這種各樣的模仿者,下面通過本文給大家分享Python分聃之?dāng)?shù)字雨加入潘周聃運(yùn)動(dòng)曲線,需要的朋友可以參考下2022-05-05詳解如何使用numpy提高Python數(shù)據(jù)分析效率
NumPy是Python語言的一個(gè)第三方庫,其支持大量高維度數(shù)組與矩陣運(yùn)算。本文主要為大家介紹了如何使用numpy提高python數(shù)據(jù)分析效率,需要的可以參考一下2023-04-04Python numpy.zero() 初始化矩陣實(shí)例
今天小編就為大家分享一篇Python numpy.zero() 初始化矩陣實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-11-11