Porównaj ceny domen i usług IT, sprzedawców z całego świata

Jak dowiedzieć się, jakie metody, właściwości itp. posiada moduł Pythona


Powiedzmy, że importuję moduł. Aby jak najlepiej go wykorzystać, chciałbym wiedzieć, jakich właściwości, metod itp. Mogę użyć. Czy jest sposób, aby się tego dowiedzieć?
Jako przykład:

definiowanie uruchomionych programów w Pythonie
https://coderoad.ru/3429250/
W tej linii:
os.system('WMIC/OUTPUT:C:\ProcessList.txt PROCESS get Caption,Commandline,Processid')

Powiedzmy, że chciałbym również wydrukować pamięć używaną przez procesy. Skąd mam wiedzieć, czy jest to możliwe? A jaka byłaby właściwa „etykieta” do tego? (tak jak autor używa „Commandline”, „ProcessId”)
Tak samo jest z tym:
import win32com.client
def find_process(name):
objWMIService = win32com.client.Dispatch("WbemScripting.SWbemLocator")
objSWbemServices = objWMIService.ConnectServer(".", "root\cimv2")
colItems = objSWbemServices.ExecQuery( "Select * from Win32_Process where Caption = '{0}'".format(name))
return len(colItems)print find_process("SciTE.exe")

Jak mam to zrobić, aby funkcja zrzucała również zużytą pamięć, ścieżkę do pliku wykonywalnego i tak dalej?
Zaproszony:
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Jeśli chodzi o moduły Pythona, możesz to zrobić
>>> import module
>>> help(module)

a otrzymasz listę obsługiwanych metod (dokładniej, otrzymasz dokumentację, która może nie zawierać wszystkich metod). Jeśli chcesz, możesz użyć
>>> dir(module)

chociaż teraz skończysz z długą listą wszystkich właściwości, metod, klas itp. w tym module.
Jednak w pierwszym przykładzie wywołujesz program zewnętrzny. Oczywiście Python nie ma pojęcia, jaką funkcjonalność ma
wmic.exe
. Jak powinno być?
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

dir (module)
zwraca nazwy atrybutów modułu
module .__ dict__
jest mapowaniem między kluczami a samymi obiektami atrybutów
module .__ dict __. keys ()
i
dir (module)
to listy zawierające te same elementy, chociaż nie są równe, ponieważ elementy w nich są w różnych zamówieniach
wygląda na to, że
help (module)
jest tym, czego naprawdę potrzebujesz
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Python ma wbudowaną funkcję o nazwie dir (). Nie jestem pewien, czy to masz na myśli, ale uruchom konsolę interaktywną Pythona i wpisz:
import datetime
dir(datetime)

Powinno to dać listę metod, właściwości i modułów podrzędnych
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

@ldmvcd
Ok, przepraszam, myślę, że jesteś początkującym i nie rozumiesz, jakie podstawowe pojęcia mam na myśli.

Obiekty są abstrakcją Pythona dla
dane. Wszystkie dane w programie w języku Python to
reprezentowane przez przedmioty lub relacje
między obiektami.

http://docs.python.org/referen ... archy
http://docs.python.org/referen ... hyNie rozumiem, dlaczego nazywa się to „abstrakcją”: dla mnie obiekt jest czymś rzeczywistym w maszynie, serią bitów zorganizowanych zgodnie z określonymi regułami, które reprezentują koncepcyjne dane lub funkcje.

Nazwy odnoszą się do przedmiotów. Imiona to
wprowadzono operacje wiązania nazw.
Każde wystąpienie nazwy w polu
tekst programu odnosi się do wiązania
nazwa ta powstała w najbardziej intymnych
blok funkcjonalny zawierający użycie.

http://docs.python.org/referen ... nding
http://docs.python.org/referen ... nding
.
Przestrzeń nazw to odwzorowanie nazw na
obiekty.

Obecnie większość przestrzeni nazw to
realizowane jako słowniki

Python ,
ale zwykle nie jest to zauważalne w
w jakikolwiek sposób (z wyjątkiem wykonania) i
może się to zmienić w przyszłości. Próbki
z przestrzeni nazw są przydzielane: zestaw wbudowanych
nazwy (zawierające funkcje takie jak
abs () i wbudowane nazwy wyjątków);
nazwy globalne w module; i
nazwy lokalne w wywołaniu funkcji.
W pewnym sensie zbiór atrybutów obiektu
obiekt tworzy również przestrzeń nazw.

http://docs.python.org/tutoria ... jects
http://docs.python.org/tutoria ... jects
.
Nawiasem mówiąc, używam atrybutu słowa
dla dowolnej nazwy po kropce-for
na przykład w wyrażeniu z.real,
real jest atrybutem obiektu z.
Ściśle mówiąc, odniesienia do nazw
moduły zawierają linki do atrybutów:
w wyrażeniu modname.funcname,
nazwa modułu to obiekt modułu, a
funcname jest jego atrybutem. W
w tym przypadku okazuje się, że jest
proste porównanie między
atrybuty modułu i globalne
nazwy zdefiniowane w module: oni
współużytkować tę samą przestrzeń nazw!

http://docs.python.org/tutoria ... jects
http://docs.python.org/tutoria ... jects
.
Przestrzenie nazw są tworzone na różnych poziomach
chwile i mają różną żywotność.

http://docs.python.org/tutoria ... jects
http://docs.python.org/tutoria ... jects
.
Przestrzeń nazw dla modułu to
wygenerowany automatycznie za pierwszym razem a
moduł jest importowany. Główny moduł
bo skrypt jest zawsze wywoływany

Główny.
http://docs.python.org/referen ... nding
http://docs.python.org/referen ... nding
.

Cóż, program w Pythonie to duża maszyna, która bawi się obiektami, odwołaniami do tych obiektów, nazwami tych obiektów i przestrzeniami nazw, z którymi są powiązane nazwy i obiekty, przestrzenie nazw są implementowane jako słowniki.
Więc masz rację: kiedy odnoszę się do kluczy, mam na myśli nazwy, które są kluczami w różnych przestrzeniach nazw. Nazwy są dowolne lub nie, w zależności od tego, czy obiekty, dla których zostały utworzone, są obiektami użytkownika, czy obiektami wbudowanymi.
Radzę uważnie przeczytać te części.

3.1. Obiekty, wartości i typy
http://docs.python.org/referen ... archy
http://docs.python.org/referen ... archy
i

4.1. Nazewnictwo i powiązanie
http://docs.python.org/referen ... nding
http://docs.python.org/referen ... nding

Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się