第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 Vim 中執(zhí)行 python 腳本行

在 Vim 中執(zhí)行 python 腳本行

慕妹3146593 2024-01-24 20:55:48
我剛剛開始使用 Vim 作為我的主要 IDE,在之前的 IDE 中我經(jīng)常使用的功能之一是“在 python 中執(zhí)行選擇”。我了解到在 python 中執(zhí)行代碼有兩種方法,一種是, :python3 {expression}另一種是:w python3我想要做的是在 vim 中執(zhí)行腳本的選定行,而不刷新(關(guān)閉)python 控制臺??雌饋?python3 {expression}沒有關(guān)閉python控制臺,所以在我使用之后:python3 a=3,命令:python3 print(a)返回了正確的值3。但是,我認(rèn)為這個功能沒有“選擇功能”。雖然:help python顯示了[range]參數(shù),但我不明白如何使用它。另一方面,第二個函數(shù)具有選擇功能(例如:1,3w !python3),但每次我使用該函數(shù)時,python 控制臺似乎都會刷新(=關(guān)閉)。我想向 .vimrc 添加簡單的函數(shù)就可以達(dá)到我的目的,但找不到。任何幫助將非常感激!
查看完整描述

2 回答

?
瀟湘沐

TA貢獻(xiàn)1816條經(jīng)驗 獲得超6個贊

找到答案了!


我通過制作簡單的自定義命令解決了這個問題。


python3 << EOL

import vim


def ExecuteSelectedLine(l1, l2):

    for i in range(l1-1,l2):

        print(">>" + vim.current.buffer[i])

        exec(vim.current.buffer[i],globals())

EOL

command! -range Eval <line1>,<line2> python3 ExecuteSelectedLine(<line1>, <line2>)

如何使用

  • 在 python 中僅運行腳本的第一行到第三行:1,3Eval

  • 運行python中的當(dāng)前行:Eval

  • 在 python 中運行可視化選擇的腳本部分:'<,'>Eval

范圍選擇與 -range 選項一起使用,并使用 python 的“exec”函數(shù)和 globals() 選項,持久性保持不變(無需刷新)。

我想我的編碼風(fēng)格,在控制臺中嘗試不同的代碼片段并最終確定主腳本,是一種奇怪的編碼方式,因為我在社區(qū)中找不到類似的嘗試。


查看完整回答
反對 回復(fù) 2024-01-24
?
繁花如伊

TA貢獻(xiàn)2012條經(jīng)驗 獲得超12個贊

我不明白這個問題。命令

:1,3w !python3

應(yīng)該可以解決這個問題,你說的“每次我使用該函數(shù)時 python 控制臺都會刷新”到底是什么意思?如果你的意思是,它等待按下回車鍵才能返回 vim,這是很自然的。

您還可以使用:

:'<,'>w !python3

以前使用可視化模式來選擇某些代碼塊。您想在新的終端窗口中執(zhí)行代碼嗎?


查看完整回答
反對 回復(fù) 2024-01-24
  • 2 回答
  • 0 關(guān)注
  • 192 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號