Új hozzászólás Aktív témák
-
sztanozs
veterán
Azért "fagy le", mert a KeepAlive függvény nem tér vissza, így a threading.Thread várhat az örökkévalóságig, hogy megkapja a callable object-et. máshol meg azért fut hibára, mert a meghívott függvény nem callable object-tel tér vissza (mert van olyan helyzet, ahol egy szelektor függvénnyel választod ki, hogy melyik függvény referenciáját add vissza - pl os-specifikus függvények esetében).
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
biztos pip3 install-t írtál és nem pip install-t?
mert ha van va fent python 2 és pyton 3 is, akkor a sima pip python 2-höz akarja leszedni a cuccot...JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
biztos ez a teljes kód?
mondjuk szerintem a Pandas partícionálja furán az adatokat és csak minden második lesz szekció, és minden páratlan meg alszekció (vagymi).[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz mylastage #2918 üzenetére
Ez nem a python hibája, ez egy általános informatikai probléma, ami szinte az összes programozási nyelvet érinti. Értem, hogy laikus fejjel ez az egyik legnehezebben feldolgozható dolog, de ennek az a fő oka, hogy nem tudod, hogyan működik a számítógép (pontosabban az ALU) valójában.
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz mylastage #2924 üzenetére
Pascalban az int változó sose vett fel tört értéket. Szerintem az emlékeid ködösítik a múltat. Persze ettől függetlenül a Real így működött, de az már a régmúlt.
Ráadásul ez nem egy python 'tulajdonság' igazából, az utóbbi időben (nem 25 évvel ezelőtt) már ez (banker's round) a sztenderd, azaz a felet mindig a közelebbi páros számhoz kell kerekíteni. Ez egy komolyabb (statisztikai) problémát old meg, mivel a 0.5 mindig felfelé kerekítése mérhető mértékben eltolja a kerekített számok eloszlását.
What’s New In Python 3.0:
The round() function rounding strategy and return type have changed. Exact halfway cases are now rounded to the nearest even result instead of away from zero. (For example, round(2.5) now returns 2 rather than 3.)
For the built-in types supporting round(), values are rounded to the closest multiple of 10 to the power minus n; if two multiples are equally close, rounding is done toward the even choice.
+
Python 3's way (called "round half to even" or "banker's rounding") is considered the standard rounding method these days, though some language implementations aren't on the bus yet.
The simple "always round 0.5 up" technique results in a slight bias toward the higher number. With large numbers of calculations, this can be significant. The Python 3.0 approach eliminates this issue.[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz mylastage #2924 üzenetére
Kis olvasnivaló: https://en.wikipedia.org/wiki/Rounding#Round_half_to_even
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz #29736192 #2939 üzenetére
Használd a Decimal round függvényét (vagy meg kell írni kézzel)
import decimal
from decimal import Decimal as D
context = decimal.getcontext()
context.rounding = decimal.ROUND_HALF_UP
round(D(2.5), 0)JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz tmslevi #2953 üzenetére
Ez a legközelebbi, amit találtam. Nem hiszem, hogy van hozzá kulcsrakész eszköz.
https://reverseengineering.stackexchange.com/questions/25075/reversing-pyarmor-discussion[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz Mr Dini #2956 üzenetére
Nem rossz, bár sok kézimunkát igényel, és lehet, hogy az új változatok ellen már nem annyira hatásos - bár szerintem csak azért nem osztotta meg a kódot, nehogy a kínaiak a körmére nézzenek
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
akarmi[bB]{3}
mi akar a fenti lenni, ez?akarmibbb
akarmibbB
akarmibBb
akarmibBB
akarmiBbb
akarmiBbB
akarmiBBb
akarmiBBBSzerintem erre nincs általános megoldás, de egy fenti ilyenre használható a product függvény az itertools modulban:
import itertools
[f'akarmi{"".join(c)}' for c in itertools.product('bB', repeat=3)][ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
-
sztanozs
veterán
Igazából csak meg kellene nézni hogy hívja meg a logon-t és nem vacakolni az oldal parszolgatásával :/
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz garga01 #2988 üzenetére
3.9 még lehet túl friss neki, de amúgy passz.
az is lehet hogy ezt a formátumot már nem támogatja a szkript.[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
-
sztanozs
veterán
dynamic importokat nem kezeli jól a pyinstaller, az összes dinamikuis importot be kell állítanod kézzel
az 1.6.8 verzió után dinamikusan tölti be az OS hookokat és ezt meg kell neki adni[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz olivera88 #3003 üzenetére
f-stringet kell használni:
today = datetime.datetime.now().strftime('%Y-%m-%d')
url = f'http://dcpc-nwp.meteo.fr/services/PS_GetCache_DCPCPreviNum?token=__5yLVTdr-sGeHoPitnFc7TZ6MhBcJxuSsoZp6y0leVHU__&model=ARPEGE&grid=0.1&package=IP1&time=13H24H&referencetime={today}T00:00:00Z'vagy egyben:
url = f'http://dcpc-nwp.meteo.fr/services/PS_GetCache_DCPCPreviNum?token=__5yLVTdr-sGeHoPitnFc7TZ6MhBcJxuSsoZp6y0leVHU__&model=ARPEGE&grid=0.1&package=IP1&time=13H24H&referencetime={datetime.datetime.now().strftime("%Y-%m-%d")}T00:00:00Z'
ja és
import datetime
kell a kód elejére, hogy működjön...[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz olivera88 #3007 üzenetére
Neked kell leprogramozni a progress bart, python csak futtatókörnyezet, magától nem jelenít meg semmit:
https://stackoverflow.com/questions/2028517/python-urllib2-progress-hook
vagy
https://stackoverflow.com/questions/41106599/python-3-5-urllib-request-urlopen-progress-bar-availableJOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz Longeye #3008 üzenetére
Osztály jól jön akkor, ha biztosítani akarod, hogy
- az adott tulajdonságok meglegyenek (egy dict esetében ez koránt sincs így);
- később mégis akarsz rajtuk műveleteket végezni;
- típus ellenőrzést akarsz végrehajtani (pl egy listában, ahol nem garantálható, hogy minden elem megfelelő típusú)Itt van néhány példa a struktúra alapú működéshez: [link] (persze a háttérben mindenhol új osztályok jönnek létre)
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz ny.erno #3013 üzenetére
Mire akarod használni ezt a szkriptet? Mert szerintem amire szeretnéd, arra vsz nem lehet (hacsak nincsenek thai, szingapúri vagy vietnámi telefonszámaid, amiket szeretnél FB-ban megkeresni).
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz ny.erno #3015 üzenetére
Nekem úgy rémlik, hogy mobil alapján mér régóta nem lehet keresni a FB nagy részét, vsz vannak még régiók/országok, ahol lehet.
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz ny.erno #3017 üzenetére
Telefonszámokhoz írtam.Ahogy nézem a szkript működéséhez kell neki egy keyword search URL, onnan betölti a taklálatokat és végigmegy rajtuk.
A mentéshez kell neki valami template excel fájl, amivel a végéredményt összemerge-eli.[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz cousin333 #3022 üzenetére
Illetve mivel az Osztály gyűjtőosztály, akkor célszerű az __iter__ és a __next__ függvények definiálása is, hogy pl egy for ciklusban könnyű legyen használni...
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz cousin333 #3025 üzenetére
Igazából erre gondoltam inkább:
def __iter__(self):
return iter(self.diakok)Ezek után már használható így a gyűjtőosztály:
elso_osztaly = Osztaly()
...
for diak in elso_osztaly:
...[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
-
sztanozs
veterán
válasz lanszelot #3047 üzenetére
Ha python fent van (3.7 kell szerintem, de meg kell nézni a csomag leírásánál, hogy mit támogat), simán lehet python3 nélkül is hívni:
manage.pypython3 akkor kell, ha van fent python 2.x és 3.x verzió is.
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz lanszelot #3054 üzenetére
a 3.9 szvsz még nagyon experimental verzió. Rakd fel a 3.8-at vagy a 3.7-et.
Utána rakd fel a pip-et (ha a telepító nem telepíti), majd
pip install django
és utána futtasd a fájlt a korábban leírt módonJOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz Dißnäëß #3063 üzenetére
Teljesen felesleges általában hogy folyamatosan fusson a kód. Főleg ah sokat kell várni, akkor egyszerűbb felszabadítani az erőforrásokat és csak akkor futni, ha kell (cron).
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz lanszelot #3070 üzenetére
Nekem egy darab GED fájlom sincs, amivel ki tudnám próbálni.
Ahogy nézem a django doksit támogatnia kell a 3.9-et is:
Django 3.2 supports Python 3.6, 3.7, 3.8, and 3.9[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
Python nem igazi multiprocessingre, alapból csak multithread-et támogat - minden mást külső csomagból (vagy kézzel kell megoldani). Majd esetleg valamelyik jövőbeni verzióban lesz majd rendes multiprocessing.
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
Nem tudom miért, de az egyik megbújó lapon a böngészőben épp ez van nyitva (hetek óta):
https://wiki.python.org/moin/ParallelProcessing[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
A dekorátorok megváltoztatják a dekorált függvény működését (gyakorlatilag becsomagolják egy másik függvénybe, ami
- képes megváltoztatni a dekorált függvény működését, az ott meghívott függvények vagy a változók átalakításával (felüldefiniálásával)
- ellenőrizheti vagy logolhatja az átadott vagy visszaadott argumentumokat[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
Dekorátor pl a input függvény felülírására:
Az első függvény (mock-olt) nem fog bekérni semmit a konzolon, fixen megkapja a test input lista sorait, de a második igen.from unittest import mock
from typing import Callable
test_inputs = [
"line 1",
"line 2",
"line 3"]
@mock.patch('builtins.input', side_effect=test_inputs)
def letme_test_it(input: Callable) -> None:
i1, i2, i3 = input(), input(), input()
print(i1, i2, i3)
def letme_provide_input():
i1, i2, i3 = input(), input(), input()
print(i1, i2, i3)
if __name__ == '__main__':
letme_test_it()
letme_provide_input()[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
Dekorátorban könnyű megvalósítani olyan dolgokat, amiket függvényen belül plusz hívásokkal tudnál csak megoldani. Ráadásul szebben újrahasználható, mintha a függvényen belül helyeznénk el, pl.:
class User:
...
def authenticate(self, username, password):
...
#bejelentkezik
@is_authenticated
def change_password(self):
...
#jelszót vált
@is_authenticated
@is_admin
def change_password_for_others(self, user):
...
#jelszót vált másik usernélvagy pl logolási szinteket adhatunk meg fv hívásoknak és a konfigurációban beállított logolási szintnek megfelelően lesz (vagy nem lesz) logolva az adott esemény:
class User:
...
@log(loglevel=1)
def authenticate(self, username, password):
...
#bejelentkezik
@log(loglevel=1)
@is_authenticated
def change_password(self):
...
#jelszót vált
@log(loglevel=2)
@is_authenticated
@is_admin
def change_password_for_others(self, user):
...
#jelszót vált másik usernél[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz Hege1234 #3103 üzenetére
Hogy néz ki a save.txt?
import requests
import os
from pynput.keyboard import Key, Controller as K
file = open("c:\kodi\save.txt")
lines = file.readlines()
line = lines[1]
os.startfile("c:\Program Files\Kodi2\kodi.exe")
time.sleep(2)
K().type(line+' ')
file = open("c:\kodi\save.txt")
lines2 = file.readlines()
url = lines2[0]
headers = { 'Content-Type': 'application/json' }
json = {"jsonrpc":"2.0","method":"Player.Open","params":{"item":{"file": url}}}
requests.post('http://kodi:kodi@192.168.1.10:8080/jsonrpc?Base', headers= headers, data= str(json))És ez a rész minek kell?
K().type(line+' ')
Amúgy a request-es rész csak akkor működik, ha engedélyezed a kodiban a http-n keresztüli távoli vezérlést.
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz Hege1234 #3103 üzenetére
Kodi RPC engedélyezése:
https://www.tinymediamanager.org/blog/kodi-json-rpc-api/JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
-
sztanozs
veterán
válasz Hege1234 #3114 üzenetére
Hogyan került bele a resp-be a result? az nem látszik a kódból...
mondjuk urllib helyett requests modult használnék:import json
import base64
import requests
credentials = b'kodi:kodi'
encoded_credentials = base64.b64encode(credentials)
authorization = b'Basic ' + encoded_credentials
headers = { 'Content-Type': 'application/json', 'Authorization': authorization }
url = 'http://192.168.1.10:8080/jsonrpc?Base'
data = [
{"jsonrpc":"2.0","method":"Player.GetProperties","params":[1,["time"]],"id":17},
{"jsonrpc":"2.0","method":"Player.GetItem","params":[1,["file"]],"id":18}]
response = requests.post(url, headers=headers, data=json.dumps(data))
# vagy
# response = requests.post(url, headers=headers, json=data)
result = response.json()
print(result)JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
Új hozzászólás Aktív témák
- nVidia tulajok OFF topikja
- HDD probléma (nem adatmentés)
- Android alkalmazások - szoftver kibeszélő topik
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- antikomcsi: Való Világ: A piszkos 12 - VV12 - Való Világ 12
- Azonnali informatikai kérdések órája
- A fociról könnyedén, egy baráti társaságban
- CASIO órák kedvelők topicja!
- TCL LCD és LED TV-k
- Fejhallgató erősítő és DAC topik
- További aktív témák...
- MECHANIC PCB repair PAD - 2. generációs kialakítás
- DC csatlakozós ventilátor kábel - 1 utas vagy 3 utas változat
- ÚJ, bontatlan iPad PRO 13 (2024) M4 CHIP! 256GB WIFI asztrofekete, 1 év Apple garancia!
- Samsung Galaxy S22 Ultra 5G 256GB, Kártyafüggetlen, 1 Év Garanciával
- HP Victus 16-r1019nt - ÚJ 16" FullHD IPS GAMER notebook - i7-14700HX, 32GB, RTX 4070
Állásajánlatok
Cég: Ozeki Kft.
Város: Debrecen
Cég: Promenade Publishing House Kft.
Város: Budapest