- Brutálisan ütős játékélményt mutatott be a 8K Association
- Vezetékes FEJhallgatók
- OLED monitor topic
- Soundbar, soundplate, hangprojektor
- NVIDIA GeForce RTX 4080 /4080S / 4090 (AD103 / 102)
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- Milyen videókártyát?
- NVIDIA GeForce RTX 3080 / 3090 / Ti (GA102)
- Raspberry Pi
- Home server / házi szerver építése
Új hozzászólás Aktív témák
-
cousin333
addikt
válasz
alec.cs #2675 üzenetére
Én kezdetnek összefűzném őket egy tuple-t tartalmazó listává:
lista = [(i, j) for i, j in zip(list1, list2)]
Ennyi elemnél mondjuk még nem lesz teljesítménybeli gondod. De ha a sebesség is számít, akkor lista helyett deque.
Esetleg készíthetsz egy generátor függvényt, ami az adott pozícióból indexelve adja vissza az értékeket. Tehát nem a listát módosítod, hanem a kiolvasást végzed máshogy.
-
-
kovisoft
őstag
válasz
alec.cs #2675 üzenetére
Gondolom, nem ez a leggyorsabb módszer, de valószínűleg az egyik legegyszerűbb:
>>> list1=list1[3:]+list1[:3]
>>> list2=list2[3:]+list2[:3]
>>> list1
['4', '5', '1', '2', '3']
>>> list2
['Négy', 'Öt', 'Egy', 'Kettő', 'Három']
Ha esetleg félreértettem, és előtte meg kell keresni a '4' elem pozícióját, akkor először kell egy ilyesmi:>>> list1.index('4')
3 -
0xmilan
addikt
válasz
alec.cs #2320 üzenetére
timeout is not a time limit on the entire response download; rather, an exception is raised if the server has not issued a response for timeout seconds (more precisely, if no bytes have been received on the underlying socket for timeout seconds). If no timeout is specified explicitly, requests do not time out.
- https://2.python-requests.org/en/master/user/quickstart/A 0.5 eleg hasrautesszeru volt. Tenyleg lehet akar tobb masodperc is.
@sztanozs
Ja, a legtobb ilyen scanner script HEAD-et hasznal a sebesseg miatt. Azt meg bele lehetne irni, hogy ha a HEAD valasza nem 200, akkor kuldje ujra GET-tel. -
Siriusb
veterán
válasz
alec.cs #2156 üzenetére
Azt próbálom elmondani, hogy ha nem morzsánként dobod be az információt, hanem az elején úgy kezded, hogy valami olyasmit szeretnél, ahol az adat fájlhoz nem tud hozzáférni a felhasználó, csak ahhoz a darabkához, amit lekérdezett, lehetséges más válaszokat kapnál. Más egy-egy részletre választ adni, s megint más egy feladatra megoldást javasolni.
Amúgy továbbra is fenntartom, hogy egy virtualhost-on futó php weboldallal tudnád legegyszerűbben megvalósítani az elvárt dolgokat, ami persze több erőforrást venne igénybe, mint egy pár soros python kód futtatása. -
-
válasz
alec.cs #2148 üzenetére
nem akarom letörni a titkosításra vonatkozó lelkesedésedet, de azért legyél tudatában, hogy egy base64 stringet két kattintás en-, és dekódolni egy notepad++ban, és linuxon is simán van rá parancs mindegyik disztróban.
és mivel a komplementer karaktere állandó, rossz esetben ránézésre felismerhető, hogy milyen kódolást használtál.
szóval ez a megoldásod legfeljebb a gyorsaságnak tesz eleget. -
Siriusb
veterán
válasz
alec.cs #2148 üzenetére
Csak sikerült félreértened, pedig direkt úgy kezdtem, hogy nem bántásból írom.
Hogy értsd: indultunk egy úgyszólván banális kérdéstől, és most már titkosításnál járunk. Mivel csak részinformációkat osztottál meg, nem feltétlenül tud bárki is jó megoldásokat mondani, mert egyrészt nem biztos, hogy az a probléma, amire a kérdésed vonatkozik, sőt talán az sem biztos, hogy a python a legcélszerűbb eszköz a feladat megoldására.
Én is csak nemrégiben kezdtem el (újra) elsajátítani ezt a programozási nyelvet, ezért tudom, hogy bizonyos elképzelések az én szintemen igen nehezen megvalósíthatók, de legalább biztosan sok idő- és energiabefektetéssel járnak, amire utánajárok a megoldásnak és elsajátítom az ahhoz szükséges ismereteket, ezért is szoktam én is kérdéseket feltenni itt.
Nekem úgy tűnt, te sem vagy még profi, elnézést kérek a tévedésemért. Távol álljon tőlem, hogy egy profinak adjak tanácsokat. -
kovisoft
őstag
válasz
alec.cs #2148 üzenetére
Ja, hogy magát a python szkriptedet szeretnéd kvázi olvashatatlanná tenni?
Erre jó lehet a base64-es megoldásod, aminek a végén meghívod az eval-t a dekódolás után. Persze ez nem igazi titkosítás, mert aki akarja, az dekódolja a base64 stringedet:myscript="""U29tZSB0ZXh0"""
eval(compile(base64.b64decode(myscript),'<string>','exec')) -
kovisoft
őstag
-
Siriusb
veterán
válasz
alec.cs #2145 üzenetére
Szerintem jobb lenne, ha leírnád mit is akarsz tulajdonképpen, mert ez már nagyon nem arról szól, hogy list-ben vagy dict-ben legyenek az adatok.
Nem vedd bántásnak, de számomra nem az jön le, hogy a jelenlegi ismereteiddel mindez könnyen megoldható lenne. Persze ha egy tanulási folyamat része, akkor nem szóltam.
Amúgy ha a weboldal készítésben jobban otthon vagy, rakj fel egy webszervert és php-ben könnyen megírod a lekérdezést. Így böngészőből egy virtualhost-on vígan elvan bárki, akit az adott gép elé ültetnek, s ha csak nem hekkerkedik, a kérdés meg van oldva. -
Siriusb
veterán
válasz
alec.cs #2140 üzenetére
Én csak a pálya széléről kiabálnék be:
Amennyiben intenzív a felhasználás módja vagy nem megbízható az internet kapcsolat, és nem lerobbant klienseken dolgoznak a felhasználók, akkor jobb lehet, ha lokálisan történik a feldolgozás.
Amennyiben a "szerver" tényleg képes megfelelően kiszolgálni ezt a feladatot is, akkor kb. mindegy, hol kérdezed le.Azonban kicsit előregondolkozva, és a tapasztalatokból kiindulva az emberek mindig többet akarnak, tehát elképzelhető, hogy ez a kis "játszadozás" gyorsan kinőné magát, s akkor már mindenképpen egy adatbázis alapú megközelítés lenne szükséges.
A jelenlegi feladat azt mondanám még "komolytalan" szint, teljesen mindegy, mit és hogyan oldasz meg, nincs egetverő különbség, bármilyen módszert is használsz. -
cousin333
addikt
válasz
alec.cs #2140 üzenetére
Őszintén szólva 1000 sornyi 700 karakteres szöveg kezelése nem hiszem, hogy túl időigényes lenne, hacsak nem valami kifejezetten ostoba módon van megoldva. Egy Jupyter Notebook-al és a %%timeit "varázslattal" nagyon gyorsan és egyszerűen ellenőrizhető a szükséges idő és összevethető más megoldásokkal.
Az a megoldás nekem szimpatikusabb, különösen, ha az URL fájl nem (gyakran) változik. Ha osztályokkal csinálod, akkor írnék egy letöltő/beolvasó metódust, amit mindjárt a példányosítás során meghívnék. Esetleg osztály metódusként (classmethod) megírva alternatív konstruktorként használnám, attól függően, hogy a fájl mennyire játszik központi szerepet az osztályban.
Ettől függetlenül a b módszer is működhet, amennyiben a hálózati kielégítő sebességű, és a használt műveletek nem okoznak extrém mértékű terhelést (mondjuk nem használnád a fájlt másodpercenként 100-szor...)
-
Siriusb
veterán
válasz
alec.cs #2063 üzenetére
Nem olyan nagy vonalakban:
from datetime import datetime
import locale
# a szöveges adattartalom miatt megadod, milyen locale-ről van szó
locale.setlocale(locale.LC_TIME,('hu_HU', 'UTF-8'))
d = '2019. február'
#datetime-ra konvertálva:
dt_obj = datetime.strptime(d, '%Y. %B')
#ezután jöhet a tetszőleges formázás
ahogy_tetszik = datetime.strftime(dt_obj, '%Y-%m')
print(ahogy_tetszik)
Formátumok:
https://docs.python.org/3/library/datetime.html#strftime-and-strptime-behavior@s1999xx
Kíváncsiságból nyomtam egy getlocale LC_TIME-t, és None lett a végeredmény. A getdefaultlocale() helyesen adta vissza a környezeti változót. Mi ennek az oka? Lehet annak köze hozzá, hogy nálam az egyes kategóriák eltérőek? -
cousin333
addikt
válasz
alec.cs #1595 üzenetére
A program pontosan azt írja ki, amit a leírtak - a
return
- alapján ki kell írnia. Úgy gondolom, hogy az mo fájlban a msgid szövegeket cseréli le a hozzá tartozó msgstr részre akkor, ha a sztringben egy "_" szerepel, ha azt zárójelben az id követi. Ez a behelyettesítés hiányzik a kódodból.Tudnál olyan részletet bemásolni, ahol működik a csere?
-
cousin333
addikt
válasz
alec.cs #1545 üzenetére
Szerintem ez egy kézenfekvő megoldás, de nyilván lehet cifrázni:
def fugg(percek):
ora, perc = percek // 60, percek % 60
if ora and perc:
print('{0} óra {1} perc'.format(ora, perc))
elif ora and not perc:
print('{0} óra'.format(ora))
else:
print('{0} perc'.format(perc))ui: Használd te is a Programkód kapcsolót. Különösen Pythonnál...
Ugyanez a legújabb, 3.6-os Pythonban még szebb:
def fugg(percek):
ora, perc = percek // 60, percek % 60
if ora and perc:
print(f'{ora} óra {perc} perc')
elif ora and not perc:
print(f'{ora} óra')
else:
print(f'{perc} perc') -
b.kov
senior tag
válasz
alec.cs #1538 üzenetére
Szia!
Rövid megoldás:
#!/usr/bin/python
# -*- coding: utf-8 -*-
from datetime import timedelta
def ora_perc_kiir(mins):
return str(timedelta(minutes=mins))[:-3]
result = ora_perc_kiir(70).split(':')
print "{} óra {} perc".format(result[0], result[1])szerk.: mondjuk ha túlcsordul az óra, akkor 1 napra váltja át a 24 órát
Új hozzászólás Aktív témák
- Brutálisan ütős játékélményt mutatott be a 8K Association
- Vezetékes FEJhallgatók
- OLED monitor topic
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Elemlámpa, zseblámpa
- Megújult a PROHARDVER!
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- Konzolokról KULTURÁLT módon
- Fotók, videók mobillal
- Soundbar, soundplate, hangprojektor
- További aktív témák...
- Új DLSS4 4K Gamer PC Ryzen 5 7600/RTX 5070 12Gb/32Gb DDR5/500Gb NVME SSD/750W 2-3Év gari
- Új DLSS4 Gamer PC Ryzen 5 5600/RTX 5060 Ti/16Gb-32Gb DDR4/500Gb NVME SSD/750W 2-3Év gari
- Új 2K Gamer PC R7 5700X/RTX 5060 Ti/32Gb DDR4/500Gb NVME SSD/750W 2-3Év gari
- BENQ ScreenBar Plus Computer Monitor Light
- Kedvező ár! Lenovo E460 laptop (14/i5-G6/8GB/128SSD)
- Csere-Beszámítás! Kezdő Gamer számítógép. I5 6400 / GTX 1060 3GB / 16GB DDR4 / 250SSD + 1TB HDD
- LG 55CS6 - 55" OLED - 4K 120Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - PS5 és Xbox!
- Telefon felvásárlás!! Samsung Galaxy A16, Samsung Galaxy A26, Samsung Galaxy A36, Samsung Galaxy A56
- Bomba ár! HP EliteBook 820 G2 - i5-5GEN I 8GB I 256GB SSD I 12,5" FHD I Cam I W10 I Garancia!
- Tablet felvásárlás!! Apple iPad, iPad Mini, iPad Air, iPad Pro
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest