當前位置:首頁 » 編程語言 » python多個文件

python多個文件

發布時間: 2022-05-20 01:07:32

『壹』 關於多個python文件共享數據

簡單。一個是通過線程同步。另一個就是全局變數global,加上這個修飾就可以了。python一個進程里的所有東西,都是在一個內存空間的。只要加了global就可以訪問。可以用這個全局變數通訊,效果也是一樣的。python一個進程只用一個CPU核。所以不存在樓下說的地址空間不一樣的問題。

進程間同步也有幾個方法。通常使用共享內存,管道,不過最常用的還是socket或者是資料庫。還有些分布式組件不是很好用。我通常用mutliprocessing,裡面有現成的進程通信辦法。

看到你的需求。我覺著可以用兩個變數,一個變數記錄修改狀態,另一個變數要求先鎖再進行修改。目前看來如果僅僅是python里實現。直接使用memcache這個工具就可以解決。一個程序讀寫,其它的程序只需要輪洵就可以了。從原理上講memcache是一個內存資料庫。

『貳』 python怎麼一次性下載多個文件

我覺得最簡單的辦法藉助celery分布式下載,或者手寫多線程、多進程進行文件下載。

『叄』 多個python文件相互調用

假如a.py這個文件有一個函數fun,那麼在b.py這個文件就可以調用這個函數,只需要寫一行代碼即可:from a import fun

『肆』 怎麼將多個python打包成exe文件

1、安裝pywin32,可以參考《怎麼給python安裝pywin32模塊?》,一定要注意對應的python版本,否則不能安裝。

『伍』 python 處理幾萬個文件

我們可以在GNU / Linux操作系統上使用2.2Ghz四核處理器和16GB RAM。當前腳本僅使用一個處理器。利用其他內核和RAM來更快地處理圖像的最佳方法是什麼?啟動多個Python進程來運行腳本會利用其他內核嗎?

另一個選擇是使用Gearman或Beanstalk之類的東西將工作分配給其他機器。我已經看了多處理庫但不知道如何利用它。

解決方案
啟動多個Python進程來運行腳本會利用其他內核嗎?

是的,如果任務受CPU約束,它將會。這可能是最簡單的選擇。但是,不要為每個文件或每個目錄生成單個進程; 考慮使用像這樣的工具,parallel(1)並讓它產生每個核心兩個進程的東西。

另一個選擇是使用Gearman或Beanstalk之類的東西將工作分配給其他機器。

那可能有用。另外,看看ZeroMQ的Python綁定,它使分布式處理變得非常簡單。

我已經看了多處理庫但不知道如何利用它。

比如定義一個函數,process它讀取單個目錄中的圖像,連接到資料庫並存儲元數據。讓它返回一個表示成功或失敗的布爾值。我們directories是目錄處理的列表。然後

import multiprocessing
pool = multiprocessing.Pool(multiprocessing.cpu_count())
success = all(pool.imap_unordered(process, directories))
將並行處理所有目錄。如果需要,您還可以在文件級執行並行操作; 這需要更多的修修補補。

請注意,這將在第一次失敗時停止; 使其容錯需要更多的工作。

『陸』 python 用循環創建多個文件

os.system命令可以調用外部命令
組合latex

zip的命令行版本工具
就可以實現你所需要的功能
用i來命名文件很簡單
for
i
in
range(1,51):
filename
=
"%d.tex"
%
(i)
這樣filename變數里存儲的就是
"1.tex"
這樣的字元串了.
壓縮文件的話
我只知道7zip是
7z
a
<壓縮檔名>
<要壓縮的文件名>
其中
要壓縮的文件名
可以有多個
示例:
7z
a
file.zip
1.tex
2.tex
3.tex
...
10.tex
這樣一個命令
就可以實現:)
至於7z.exe
可以到7-zip的官方網站上下載命令行版本的7z,
壓縮包里會有個7za.exe,改名一下就好
:)

『柒』 python 合並多個 excel

思路
利用python xlrd包讀取excle文件,然後將文件內容存入一個列表中,再利用xlsxwriter將內容寫入到一個新的excel文件中。
完整代碼
# -*- coding: utf-8 -*-

#將多個Excel文件合並成一個
import xlrd
import xlsxwriter

#打開一個excel文件
def open_xls(file):
fh=xlrd.open_workbook(file)
return fh

#獲取excel中所有的sheet表
def getsheet(fh):
return fh.sheets()

#獲取sheet表的行數
def getnrows(fh,sheet):
table=fh.sheets()[sheet]
return table.nrows

#讀取文件內容並返回行內容
def getFilect(file,shnum):
fh=open_xls(file)
table=fh.sheets()[shnum]
num=table.nrows
for row in range(num):
rdata=table.row_values(row)
datavalue.append(rdata)
return datavalue

#獲取sheet表的個數
def getshnum(fh):
x=0
sh=getsheet(fh)
for sheet in sh:
x+=1
return x


if __name__=='__main__':
#定義要合並的excel文件列表
allxls=['F:/test/excel1.xlsx','F:/test/excel2.xlsx']
#存儲所有讀取的結果
datavalue=[]
for fl in allxls:
fh=open_xls(fl)
x=getshnum(fh)
for shnum in range(x):
print("正在讀取文件:"+str(fl)+"的第"+str(shnum)+"個sheet表的內容...")
rvalue=getFilect(fl,shnum)
#定義最終合並後生成的新文件
endfile='F:/test/excel3.xlsx'
wb1=xlsxwriter.Workbook(endfile)
#創建一個sheet工作對象
ws=wb1.add_worksheet()
for a in range(len(rvalue)):
for b in range(len(rvalue[a])):
c=rvalue[a][b]
ws.write(a,b,c)
wb1.close()
print("文件合並完成")

合並後

『捌』 python 多個文件怎麼調用

同時打開三個文件,文件行數一樣,要求實現每個文件依次讀取一行,然後輸出,我們先來看比較容易想到的寫法:

with open(filename1, 'rb') as fp1:
with open(filename2, 'rb') as fp2:
with open(filename3, 'rb') as fp3:
for i in fp1:
j = fp2.readline()
k = fp3.readline()
print(i, j, k)

注意這里只能對單個文件進行for循環讀取,不能寫成:

for i, j, k in fp1, fp2, fp3:
print(i, j, k)

但可使用強大的zip操作:

for i, j, k in zip(fp1, fp2, fp3):
print(i, j, k)

這樣層層的嵌套未免啰嗦,with結構支持一種更簡潔的寫法:

with open(filename1, 'rb') as fp1, open(filename2, 'rb') as fp2, open(filename3, 'rb') as fp3:
for i in fp1:
j = fp2.readline()
k = fp3.readline()
print(i, j, k)

或者使用更為優雅的寫法,此時需要contextlib語法糖:

from contextlib improt ExitStack
with ExitStack() as stack:
files = [stack.enter_context(open(fname)) for fname in [filename1, filename2, filename3]]
for i, j, k in zip(files[0], files[1], files[2]):
print(i, j, k)

『玖』 python 如何把多個文件內容合並到以一個文件

Python編程將多個文件合並,代碼如下:

#例子:合並a.txt、b.txt、c.txt合並成d.txt文件

#文件列表,遍於讀取

flist = ['a.txt','b.txt','c.txt']

#要寫入的文件

ofile = open('d.txt', 'w')

#遍歷讀取所有文件,並寫入到輸出文件

for fr in flist:
for txt in open(fr, 'r'):
ofile.write(txt)
ofile.close()
效果如下:

『拾』 如何將多個Python文件

直接寫就可以了。
比如文件名為variable.py,內容如下:
1234
mylist
=
[1,2,3]a
=
4b
=
'456'……
然後,在其他文件中直接引用就可以了。
import
variable
然後
variable.a,
variable.b

熱點內容
sqldcl 發布:2025-05-15 07:29:18 瀏覽:198
canvas的圖像上傳 發布:2025-05-15 07:29:17 瀏覽:101
離線緩存為什麼點不動 發布:2025-05-15 07:27:17 瀏覽:828
釘鼎伺服器出口ip 發布:2025-05-15 07:13:08 瀏覽:279
移動硬碟和光碟哪個存儲時間長 發布:2025-05-15 07:04:25 瀏覽:489
壓縮一定 發布:2025-05-15 06:57:30 瀏覽:289
進棧演算法 發布:2025-05-15 06:56:02 瀏覽:215
安卓和緩存 發布:2025-05-15 06:56:02 瀏覽:428
筆記本電腦台式伺服器 發布:2025-05-15 06:40:41 瀏覽:109
4k無壓縮 發布:2025-05-15 06:02:54 瀏覽:75