『壹』 python3.8.2 使用pip20.0.2 安裝pygame報錯

你要查看你的python版本

如果是python 2.7的,直接打開終端窗口執行 $ sudo apt-get install python-pygam 它會下載並安裝給你

如果是python3的,就要安裝pygame的依賴庫,然後再下載安裝

安裝依賴庫$ sudoapt-get install python3-dev mercurial (如果你打開終端時用的是python3.5,那就把python3-dev換成python3.5-dev)

接下來再執行$ sudoapt-get install libsdl-image1.2-devlibsdl2-devlibsdl-ttf2.0-dev

安裝完依賴庫後,安裝執行$ pip install --user hg+網頁鏈接

他會告訴你pygame找到那些庫後,輸出會暫停一段時間,然後你回車,如果你看到一條信息說明你安裝成功了。

最後打開python終端,執行$ python3 (如果時2.7就不用3了),接著再執行import pygama

如果導入成功了,那就時安裝好了。

『貳』 python,如何下載FTP上的文件

通過python下載FTP上的文件夾的實現代碼:
# -*- encoding: utf8 -*-
import os
import sys
import ftplib
class FTPSync(object):
def __init__(self):
self.conn = ftplib.FTP('10.22.33.46', 'user', 'pass')
self.conn.cwd('/') # 遠端FTP目錄
os.chdir('/data/') # 本地下載目錄
def get_dirs_files(self):
u''' 得到當前目錄和文件, 放入dir_res列表 '''
dir_res = []
self.conn.dir('.', dir_res.append)
files = [f.split(None, 8)[-1] for f in dir_res if f.startswith('-')]
dirs = [f.split(None, 8)[-1] for f in dir_res if f.startswith('d')]
return (files, dirs)
def walk(self, next_dir):
print 'Walking to', next_dir
self.conn.cwd(next_dir)
try:
os.mkdir(next_dir)
except OSError:
pass
os.chdir(next_dir)
ftp_curr_dir = self.conn.pwd()
local_curr_dir = os.getcwd()
files, dirs = self.get_dirs_files()
print "FILES: ", files
print "DIRS: ", dirs
for f in files:
print next_dir, ':', f
outf = open(f, 'wb')
try:
self.conn.retrbinary('RETR %s' % f, outf.write)
finally:
outf.close()
for d in dirs:
os.chdir(local_curr_dir)
self.conn.cwd(ftp_curr_dir)
self.walk(d)
def run(self):
self.walk('.')
def main():
f = FTPSync()
f.run()
if __name__ == '__main__':
main()

『叄』 如何在Python中使用FTP

from ftplip import FTP # 首先要引入 ftplib 這個庫

# 接著,這是我自定義的幾個用於操作 ftp 的函數,def 後面跟的是自定義函數名,函數體內FTP 相關的語句和函數來自上面 import 那個包,你自己體會吧:
# 初始化 FTP 連接
def ftp_open(HOST,PORT,USERNAME,PASSWORD):
ftp=FTP()
ftp.set_debuglevel(2)
ftp.connect(host=HOST,port=PORT)
ftp.login(USERNAME,PASSWORD)
return ftp

# 關閉 FTP 連接
def ftp_close(ftp):
ftp.set_debuglevel(0)
ftp.quit()

# 文件上傳函數,filename 可以是windows 格式包含全路徑的文件
def ftp_up(ftp,filename):
#print(ftp.getwelcome())
#ftp.cwd('xxx/www')
file_handler=open(filename,'rb')
ftp.storbinary('STOR %s' % os.path.basename(filename),file_handler)
file_handler.close()
print('FTP up OK.')

# 文件下載函數,filename 可以是windows 格式包含全路徑的文件
def ftp_down(ftp,filename):
#print(ftp.getwelcome())
#ftp.cwd('xxx/www')
file_handler=open(filename,'wb')
ftp.retrbinary('RETR %s' % os.path.basename(filename),file_handler)
file_handler.close()
print('FTP down OK.')

『肆』 python 檢測FTP目錄是否為空

ftp相關命令操作
ftp.cwd(pathname) #設置FTP當前操作的路徑
ftp.dir() #顯示目錄下文件信息
ftp.nlst() #獲取目錄下的文件
ftp.mkd(pathname) #新建遠程目錄
ftp.pwd() #返回當前所在位置
ftp.rmd(dirname) #刪除遠程目錄
ftp.delete(filename) #刪除遠程文件
ftp.rename(fromname, toname)#將fromname修改名稱為toname。
ftp.storbinaly("STOR filename.txt",file_handel,bufsize) #上傳目標文件
ftp.retrbinary("RETR filename.txt",file_handel,bufsize)#下載FTP文件

『伍』 如何在 VScode 中配置 Python 的互動式命令環境



vscode調試python是可以控制台交互的

  • 下載vscode的擴展「Python」

  • 查看一下這個擴展的官方說明 DonJayamanne/pythonVSCode

  • 按照說明在調試的時候選擇 Integrated Terminal/Console

  • 設置python目錄:在用戶設置里找到

    "python.pythonPath": "python",

    在右側修改,如:

    "python.pythonPath": "C:/Users/zyc/AppData/Local/Programs/Python/Python35/Python.exe"
  • 然後點旁邊的齒輪按鈕打開launch.json,找到Integrated Terminal/Console對應的設置修改

    {
    "name": "Integrated Terminal/Console",
    "type": "python",
    "request": "launch",
    "stopOnEntry": true,
    "pythonPath": "${config.python.pythonPath}",
    "program": "${file}",
    "cwd": "${workspaceRoot}",
    "console": "integratedTerminal",
    "debugOptions": [
    "WaitOnAbnormalExit",
    "WaitOnNormalExit"
    ]
    },
  • 應該就可以了

『陸』 python遍歷特定目錄的深度問題

你這樣抄寫很復雜,建襲議用glob模塊。


importglob

#獲取指定目錄下的所有圖片
printglob.glob(r"E:/Picture/*/*.jpg")
#獲取上級目錄的所有.py文件
printglob.glob(r'../*.py')#相對路徑

『柒』 怎麼用python查詢出 進程 CPU使用率 內存使用 句柄數

看到句柄數這幾個字,我猜可能是要windows下運行的?

可能答非所問,不過在linux下最好的用的莫過於psutil了,你可以通過進程名或pid很好的監控任意進程的系統佔用情況,甚至進程建立的每個連接都能獲取到

>>>importpsutil
>>>psutil.pids()
[1,2,3,4,5,6,7,46,48,50,51,178,182,222,223,224,
268,1215,1216,1220,1221,1243,1244,1301,1601,2237,2355,
2637,2774,3932,4176,4177,4185,4187,4189,4225,4243,4245,
4263,4282,4306,4311,4312,4313,4314,4337,4339,4357,4358,
4363,4383,4395,4408,4433,4443,4445,4446,5167,5234,5235,
5252,5318,5424,5644,6987,7054,7055,7071]
>>>
>>>p=psutil.Process(7055)
>>>p.name()
'python'
>>>p.exe()
'/usr/bin/python'
>>>p.cwd()
'/home/giampaolo'
>>>p.cmdline()
['/usr/bin/python','main.py']
>>>
>>>p.status()
'running'
>>>p.cpu_percent(interval=1.0)
12.1

>>>psutil.net_io_counters(pernic=True)
{'eth0':netio(bytes_sent=485291293,bytes_recv=6004858642,packets_sent=3251564,packets_recv=4787798,errin=0,errout=0,dropin=0,dropout=0),
'lo':netio(bytes_sent=2838627,bytes_recv=2838627,packets_sent=30567,packets_recv=30567,errin=0,errout=0,dropin=0,dropout=0)}

從官方文檔上了一部分出來,有沒有碉堡了的感覺,快去翻一下文檔吧,非常容易使用

『捌』 python 怎麼調用命令實現

在Python/wxPython環境下,執行外部命令或者說在Python程序中啟動另一個程序的方法

1、os.system(command)

os.system()函數用來運行shell命令。此命令可以方便的調用或執行其他腳本和命令

#打開指定的文件 >>>os.system('notepad *.txt')

2、wx.Execute(command, syn=wx.EXEC_ASYNC, callback=None)

若置syn為wx.EXEC_ASYNC則wx.Excute函數立即返回,若syn=wx.EXEC_SYNC則等待調用的程序結束後再返回。

callback是一個wx.Process變數,如果callback不為None且syn=wx.EXEC_ASYNC,則程序結束後將調用wx.Process.OnTerminate()函數。

os.system()和wx.Execute()都利用系統的shell,執行時會出現shell窗口。如在Windows下會彈出控制台窗口,不美觀。下面的兩種方法則沒有這個缺點。

3、import subprocess

subprocess.Popen(args, bufsize=0, executable=None, stdin=None,
stdout=None, stderr=None, preexec_fn=None, close_fds=False, shell=False,
cwd=None, env=None, universal_newlines=False, startupinfo=None,
creationflags=0)

subprocess.call ([cmd, arg1, arg2],shell=True)

『玖』 python如何創建FTP目錄

直接使用ftplib就可以實現,其中有一個nlst功能用於查詢目錄,cwd用於改變目錄,還有一個size功能。你這邊只需要保留一個目錄的鏡像。如果發現有目錄差異,或者是文件大小發生變更,就用retrbinary進行文件同步就可以。

『拾』 python怎麼ftp上傳文件

通過python下載FTP上的文件夾的實現代碼:
# -*- encoding: utf8 -*-
import os
import sys
import ftplib
class FTPSync(object):
def __init__(self):
self.conn = ftplib.FTP('10.22.33.46', 'user', 'pass')
self.conn.cwd('/') # 遠端FTP目錄
os.chdir('/data/') # 本地下載目錄
def get_dirs_files(self):
u''' 得到當前目錄和文件, 放入dir_res列表 '''
dir_res = []
self.conn.dir('.', dir_res.append)
files = [f.split(None, 8)[-1] for f in dir_res if f.startswith('-')]
dirs = [f.split(None, 8)[-1] for f in dir_res if f.startswith('d')]
return (files, dirs)
def walk(self, next_dir):
print 'Walking to', next_dir
self.conn.cwd(next_dir)
try:
os.mkdir(next_dir)
except OSError:
pass
os.chdir(next_dir)
ftp_curr_dir = self.conn.pwd()
local_curr_dir = os.getcwd()
files, dirs = self.get_dirs_files()
print "FILES: ", files
print "DIRS: ", dirs
for f in files:
print next_dir, ':', f
outf = open(f, 'wb')
try:
self.conn.retrbinary('RETR %s' % f, outf.write)
finally:
outf.close()
for d in dirs:
os.chdir(local_curr_dir)
self.conn.cwd(ftp_curr_dir)
self.walk(d)
def run(self):
self.walk('.')
def main():
f = FTPSync()
f.run()
if __name__ == '__main__':
main()