當前位置:首頁 » 編程語言 » pythonshell變數

pythonshell變數

發布時間: 2022-10-01 21:52:35

A. 請問各位,在shell中賦值了一個變數,能用python讀取他嗎,用什麼命令呢

import subprocess
a = subprocess.Popen("echo $PATH", stdout=subprocess.PIPE, shell=True)
b, err = a.communicate()
print b

B. python shell 中怎麼實現清屏

Python Shell有兩種方式,分別為「Windows命令行窗口」和「IDLE」
「命令行窗口」下可以通過如下兩種方法:
1. import subprocess
subprocess.call("clear") # linux/mac
subprocess.call("cls", shell=True) # windows
執行完次命令後,窗口頂部第一行會出現一個0,接下來才會是輸入提示符「>>>」
消除這個0的方法是在此命令前添加一個變數,例如 i=subprocess.call("cls", shell=True)
2. import os
os.system("cls") # windows
os.system("clear") # linux
執行完次命令後,窗口頂部第一行也會出現一個0,接下來才會是輸入提示符「>>>」
消除這個0的方法同方法1
「IDLE」下以上兩種方式都不起作用,可以通過建立如下函數實現:
1、偽清屏
def cls():
print " "*80 #Shell 3.0+ 改為 print((' '*80))
此函數將命令行往下移動80行,數字80可以自己任意設定
這是偽清屏,只是輸入滿屏的空格而已
2、插件法
首先下載clearwindow.py,將這個文件放在Python XLibidlelib目錄下(X為python版本),然後在這個目錄下找到config-extensions.def這個文件(idle擴展的配置文件),以記事本的方式打開它(為防止出錯,可以在打開它之前先一個備份)。打開config-extensions.def 後在句末加上這樣幾句:

[ClearWindow]
enable=1
enable_editor=0
enable_shell=1
[ClearWindow_cfgBindings]
clear-window=<Control-Key-l>

然後保存退出即可。
打開python的idle,看看options是不是多了一個選項clear shell window ctrl+L
如果是這樣的話,那就證明安裝成功了,以後要清屏直接ctrl+L就可以了


附clearwindow.py代碼:

classClearWindow:

menudefs=[
('options',[None,
('ClearShellWindow','<<clear-window>>'),
]),]

def__init__(self,editwin):
self.editwin=editwin
self.text=self.editwin.text
self.text.bind("<<clear-window>>",self.clear_window2)

self.text.bind("<<undo>>",self.undo_event)#add="+"doesn'twork

defundo_event(self,event):
text=self.text

text.mark_set("iomark2","iomark")
text.mark_set("insert2","insert")
self.editwin.undo.undo_event(event)

#fixiomarkandinsert
text.mark_set("iomark","iomark2")
text.mark_set("insert","insert2")
text.mark_unset("iomark2")
text.mark_unset("insert2")


defclear_window2(self,event):#Alternativemethod
#
text=self.text
text.undo_block_start()
text.mark_set("iomark2","iomark")
text.mark_set("iomark",1.0)
text.delete(1.0,"iomark2linestart")
text.mark_set("iomark","iomark2")
text.mark_unset("iomark2")
text.undo_block_stop()
ifself.text.compare('insert','<','iomark'):
self.text.mark_set('insert','end-1c')
self.editwin.set_line_and_column()

defclear_window(self,event):
#removeundodelegator
undo=self.editwin.undo
self.editwin.per.removefilter(undo)

#clearthewindow,butpreservecurrentcommand
self.text.delete(1.0,"iomarklinestart")
ifself.text.compare('insert','<','iomark'):
self.text.mark_set('insert','end-1c')
self.editwin.set_line_and_column()

#restoreundodelegator
self.editwin.per.insertfilter(undo)

C. 如何打開python shell

Windows啟動Python互動式解釋器有兩種方式。第一種方式是進入Pyhton的安裝目錄,直接運行python.exe程序;第二種方式是進入Windows命令行窗口,在命令行窗口啟動python.exe。步驟如下:

1、第一步 找到python.exe文件:

注意事項:

1、在Windows命令行窗口啟動Python互動式解釋器,首先需要將Python安裝目錄的路徑,添加到Path系統環境變數

2、可以啟動Python交互解釋器進行互動式編程,也可以用Python自帶的集成開發工具編寫Python程序

D. python 調用shell環境變數 和本地的不同

python -> shell:
1.環境變數

復制代碼代碼如下:

import os
var=123或var='123'
os.environ['var']=str(var) #environ的鍵值必須是字元串
os.system('echo $var')

復制代碼代碼如下:

import os
var=123或var='123'
os.environ['var']=str(var) #environ的鍵值必須是字元串
os.system('echo $var')

2.字元串連接

復制代碼代碼如下:

import os
path='/root/a.txt'
var=[1]
var='bash'
os.system('echo ' + path) #注意echo後有空格
os.system('echo ' + str(var[0]))
os.system('echo ' + var + ' /root/c.sh') #注意echo後和/root前有空格

復制代碼代碼如下:

import os
path='/root/a.txt'
var=[1]
var='bash'
os.system('echo ' + path) #注意echo後有空格
os.system('echo ' + str(var[0]))
os.system('echo ' + var + ' /root/c.sh') #注意echo後和/root前有空格

3.通過管道

復制代碼代碼如下:

import os
var='123'
os.popen('wc -c', 'w').write(var)

復制代碼代碼如下:

import os
var='123'
os.popen('wc -c', 'w').write(var)

4.通過文件

復制代碼代碼如下:

output = open('/tmp/mytxt', 'w')
output.write(S) #把字元串S寫入文件
output.writelines(L) #將列表L中所有的行字元串寫到文件中
output.close()

復制代碼代碼如下:

output = open('/tmp/mytxt', 'w')
output.write(S) #把字元串S寫入文件
output.writelines(L) #將列表L中所有的行字元串寫到文件中
output.close()

5.通過重定向標准備輸出

復制代碼代碼如下:

buf = open('/root/a.txt', 'w')
print >> buf, '123\n', 'abc'

復制代碼代碼如下:

buf = open('/root/a.txt', 'w')
print >> buf, '123\n', 'abc'



復制代碼代碼如下:

print >> open('/root/a.txt', 'w'), '123\n', 'abc' #寫入或生成文件
print >> open('/root/a.txt', 'a'), '123\n', 'abc' #追加

復制代碼代碼如下:

print >> open('/root/a.txt', 'w'), '123\n', 'abc' #寫入或生成文件
print >> open('/root/a.txt', 'a'), '123\n', 'abc' #追加

shell -> python:
1.管道

復制代碼代碼如下:

import os
var=os.popen('echo -n 123').read( )
print var

復制代碼代碼如下:

import os
var=os.popen('echo -n 123').read( )
print var

2.

復制代碼代碼如下:

import commands
var=commands.getoutput('echo abc') #輸出結果
var=commands.getstatusoutput('echo abc') #退出狀態和輸出結果

復制代碼代碼如下:

import commands
var=commands.getoutput('echo abc') #輸出結果
var=commands.getstatusoutput('echo abc') #退出狀態和輸出結果

3.文件

復制代碼代碼如下:

input = open('/tmp/mytxt', 'r')
S = input.read( ) #把整個文件讀到一個字元串中
S = input.readline( ) #讀下一行(越過行結束標志)
L = input.readlines( ) #讀取整個文件到一個行字元串的列表中

復制代碼代碼如下:

input = open('/tmp/mytxt', 'r')
S = input.read( ) #把整個文件讀到一個字元串中
S = input.readline( ) #讀下一行(越過行結束標志)
L = input.readlines( ) #讀取整個文件到一個行字元串的列表中

E. ipython如何將shell變數轉換為Python變數

有一個模塊,似乎叫environment,可以直接訪問shell里的環境變數。

F. 如何把python變數 傳給shell命令

變數前面用global聲明全局變數,運行文件後就能在shell裡面調用了

globala
a=1

G. python有沒有類似shell中 $#的變數來表示傳進來多少個參數。

用 len(sys.argv)-1 能得到用戶輸入的參數的個數,因為sys.argv的第一個元素總腳本名,所以要-1

H. 如何使用shell或python進行變數替換

echo $test
這是PHP吧?你確定要用python處理?
思路:
讀取a文件內容 遍歷每行內容
以單引號分割字元串 得到設置的值
按照b文件格式拼接出c文件的內容
最後生成或覆蓋c文件

熱點內容
速喵游戲下載為什麼要鎖屏密碼 發布:2024-12-24 11:07:38 瀏覽:336
國家基礎資料庫 發布:2024-12-24 10:58:20 瀏覽:923
python是否是字元串 發布:2024-12-24 10:56:51 瀏覽:525
疫區的消毒應怎麼配置 發布:2024-12-24 10:55:31 瀏覽:242
可樂雲解壓密碼 發布:2024-12-24 10:50:18 瀏覽:759
數據存儲與容災 發布:2024-12-24 10:49:47 瀏覽:597
蘋果安卓哪個好玩 發布:2024-12-24 10:44:00 瀏覽:317
怎麼在電腦上建網站上傳ftp 發布:2024-12-24 10:34:36 瀏覽:777
linux下安裝驅動 發布:2024-12-24 10:33:03 瀏覽:652
什麼人用獨立伺服器 發布:2024-12-24 10:22:09 瀏覽:684