Hirdetés
- Így spórolhat az Apple az iPhone 18 kijelzőin
- iPhone topik
- Távozik az Apple vezérigazgatója
- MWC 2026: Bajnoki címre pályázik a Xiaomi Watch 5
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Honor Magic8 Pro - bevált recept kölcsönvett hozzávalókkal
- Xiaomi 15T Pro - a téma nincs lezárva
- Huawei Watch D2 - nyomás utána!
- Külföldi prepaid SIM-ek itthon
- Kisebb lett a Honor MagicPad3 Pro
Új hozzászólás Aktív témák
-
Oryctolagus
tag
válasz
Oryctolagus
#3907
üzenetére
megoldottam nyakatekerten, de megy
-
axioma
veterán
válasz
Oryctolagus
#3892
üzenetére
atlaghoz tuti perc (vagy masodperc) egeszeket atlagolnek, majd a megjelenites megoldja ha neked nem 12589 masodperc hanem 3 ora 29 perc 8 masodperc kiiras legyen (bocs ha elszamoltam de a formatum a lenyeg)
vagy #3892 is jo persze, keresztposzt, lenyegeben ugyanaz -
MasterMark
titán
válasz
Oryctolagus
#3892
üzenetére
Akkor alakítsd át decimálissá ahogy sztanozs is írta utána már tudsz vele számolni. Aztán ha megvannak az értékek akkor visszaalakítod óra formátumra.
Azaz a 4:30 vagyis 4 és fél óra decimálisan 4.5 óra.
szerk.: Igaz, tárold csak simán a total_seconds-ot ahogy axioma írja és kész. Könnyebb is számolni vele.
-
MasterMark
titán
válasz
Oryctolagus
#3890
üzenetére
A kérdés az hogy azt szeretnéd hogy:
a 4 óra 30 percből 4.30 legyen vagy az hogy 4.5.szerk.: Mi a célja ennek a formátumnak amit meg akarsz csinálni? Mert nekem ebből még nem világos.
-
válasz
Oryctolagus
#3885
üzenetére
totalseconds-ot kell hasznalni
from datetime import datetime
date_form = '%Y-%m-%d %H:%M:%S'
str_dt1 = '2022-11-28 10:32:00'
str_dt2 = '2021-10-26 15:21:00'
dt1 = datetime.strptime(str_dt1, date_form)
dt2 = datetime.strptime(str_dt2, date_form)
minus = int((dt2 - dt1).total_seconds())
perc, mperc = divmod(minus, 60)
ora, perc = divmod(perc, 60)
print(f'{ora}:{perc}')
print(f'{ora}.{perc*100//60}') -
Hege1234
addikt
válasz
Oryctolagus
#3885
üzenetére
gányolós megoldással valahogy így
from datetime import datetime
import re
date_form = '%Y-%m-%d %H:%M:%S'
str_dt1 = '2022-11-28 10:32:00'
str_dt2 = '2021-10-26 15:21:00'
dt1 = datetime.strptime(str_dt1, date_form)
dt2 = datetime.strptime(str_dt2, date_form)
minus = dt2 - dt1
minus_zeros = re.findall(r'(.*):', str(minus))[0].strip()
to_dot = re.sub(':', '.', minus_zeros)
minus_text = re.findall(r',.(.*)', str(to_dot))[0].strip()
print(minus_text)
#4.49szerk:
ok látom már miért nem lesz jó
hozzáírja a napot is mennyi telt el...
javítottam -
válasz
Oryctolagus
#3883
üzenetére
az a baj, hogy ez szamkent nem megfelelo ertek...
6:49 != 6.496:49 == 6.82 -
MasterMark
titán
válasz
Oryctolagus
#3881
üzenetére
Óra + perc/100
-
JoinR
őstag
válasz
Oryctolagus
#3517
üzenetére
Na ki kellett volna próbálnom, mielőtt elküldöm sajnos a datetime esetén az elnevezésekbe könnyű belekeveredni, mert a module és a function neve is datetime. Érdemes csak 1-1 function-t importálni, és a datetime function-nek nevet adni (as dt)
Így tuti lefut:
from datetime import datetime as dtfrom datetime import timedeltadatum1 = "202105071312"current_time = dt.now()datum1 = dt.strptime(datum1, "%Y%m%d%H%M")if datum1 <= current_time - timedelta(days=30):print("Mukodik")A
datetime.timedelta(days=30)akkor működne, ha az egész module-t beimportálnádimport datetime-mal, viszont akkor a többi sornáldatetime.datetime.now()megdatetime.datetime.strptime(...)kellene, ami nem túl szép. -
JoinR
őstag
válasz
Oryctolagus
#3515
üzenetére
Így már értem. Szóval a datetime.now()-t nincs értelme olvasható stringre alakítani, maradjon így:
current_time = datetime.now()
Hanem a datum1-et alakítjuk át stringből datetime objectté:datum1 = datetime.strptime(datum1, "%Y%m%d%H%M")
Így már használható velük a timedelta function összehasonlításra, pl:if datum1 <= current_time - datetime.timedelta(days=30):... -
JoinR
őstag
válasz
Oryctolagus
#3513
üzenetére
Kicsit szét van esve ez a hsz, így nem értem mi a cél, de ha már dátum, akkor szerencsésebb lenne dátumként tárolni.
Pl.:current_time = datetime.strptime(current_time, "%Y%m%d%H%M")
Amúgy a kérdésre a válasz elvileg csakint(current_time)lenne, ha az érték stringként kerül a változóba az adatbázisból. -
Siriusb
veterán
válasz
Oryctolagus
#3463
üzenetére
Szerintem a root_dir megkevert téged, itt a példa: https://docs.python.org/3/library/shutil.html#archiving-example-with-base-dir
base_name is the name of the file to create, including the path
Azaz nem csak a készülő fájl neve, hanem az útvonal is itt kerül megadásra, pl. os.join-nal.base_dir is the directory where we start archiving from; i.e. base_dir will be the common prefix of all files and directories in the archive. base_dir must be given relative to root_dir
A root_dir az archivum főkönyvtára, és a base_dir relatív kell legyen ehhez.Tehát root_dir a C:, base_dir az "innen".
Vagy egyszerűen chdir-rel belépsz a "C:\innen"-be és a fenti két paraméternek ez lesz az alapértéke, meg sem kell adnod. Attól függ, milyen struktúrát akarsz. -
Siriusb
veterán
válasz
Oryctolagus
#3423
üzenetére
Szia!
Szerintem ezek számot adnak vissza: [link]
Ha datetime-má alakítod, tudsz a dátumokkal is műveleteket végezni, kivonni stb:
valtozo = datetime.datetime.fromtimestamp(os.path.getmtime(path)) -
válasz
Oryctolagus
#3423
üzenetére
Szia,
át kell alakítani datetimre-ra és utána már kivonhatóik egymásból simán
time = datetime.strptime(time_str, '%d/%m/%y %H:%M:%S')
-
Noddy
senior tag
válasz
Oryctolagus
#662
üzenetére
Szerintem jó kis programot készítettél
Én is most ismerkedek a pythonnal és én se tudtam volna elsőre tökéletesen megcsinálni, pl a random string generálást eddig nem ismertem. Csak feltűnt, hogy bár létre hoztad a q változót nem hivatkoztál rá. -
Noddy
senior tag
válasz
Oryctolagus
#659
üzenetére
import random
import string
import sys
import os
s=string.digits+string.punctuation+string.ascii_letters
q=str(''.join(random.sample(s,10)))
print ('Az Ön jelszava')
print (q)
kerdes=input("Másikat, i vagy n?")
while kerdes==('i'):
q=str(''.join(random.sample(s,10)))
print (q)
kerdes=input("Másikat, i vagy n?")
else:
kerdes==('n')
mentes=input('Szeretné menteni .txt fájlban?, i vagy n?')
if mentes==('i'):
h=input('A fájl helye legyen:')
os.chdir(h)
f=open(input("Adja meg a fájl nevét:")+'.txt','w')
f.write(q)
f.close()
print('Köszönöm, hogy ezt a programot választotta.')
print('Köszönöm, hogy ezt a programot választotta.')Elvileg így most működik, de az os.chdir() nem tudom hogy működik konzolban, mármint, hogy kell megadni, hogy hova mentsen.
-
Noddy
senior tag
válasz
Oryctolagus
#659
üzenetére
Ha az elkészült jelszó a q változóban van, miért nem azt íratod ki és miért generáltatsz újat a .join(random.sample(s,10) sorral?
Nem úgy kellene, hogy:
q=str(''.join(random.sample(s,10)))
print ('Az Ön jelszava')
print (q)És ugyan így a fájlba íratásnál is.
Új hozzászólás Aktív témák
Hirdetés
- Parfüm topik
- Hitelkártyák használata, hitelkártya visszatérítés
- Így spórolhat az Apple az iPhone 18 kijelzőin
- Autós topik
- 5.1, 7.1 és gamer fejhallgatók
- Parkside szerszám kibeszélő
- exHWSW - Értünk mindenhez IS
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Kerékpárosok, bringások ide!
- Azonnali fotós kérdések órája
- További aktív témák...
- Szép állapotú Samsung Galaxy S20 Ultra 5G 12/128GB, 12 hónap garancia!
- Cyborg 15 A13VFK 15.6" FHD IPS i7-13620H RTX 4060 16GB 512GB NVMe magyar vbill gar
- Dell Latitude 5410 - 14" FHD touch, Core i5 10310U, 16GB RAM, SSD, jó akku, számla, 6 hó gar
- Acer Nitro ANV15-51 15.6" FHD IPS i5-13420H RTX 4050 16GB 500GB NVMe magyar vbill gar
- Vivobook S 16 S5606MA 16" 3K OLED Ultra 7 155H 16GB 256GB NVMe magyar vbill IR kam gar
- Azonnali készpénzes Intel i5 i7 i9 8xxx 9xxx processzor felvásárlás személyesen / csomagküldés
- Cooler Master Cosmos C700P + 4db be quiet! Light Wings 120mm PWM + kontroller
- Keresünk iPhone 16/16e/16 Plus/16 Pro/16 Pro Max
- Lenovo LEGION 5 PRO Ultra 9 275HX 32GB RAM 1TB RTX 5070 Ti 12GB 16" QHD+ OLED 240Hz 3év Prémium G.
- Csak 1 db! 27% Áfás, Új Mac Studio M2 Ultra 24/60 mag, 64GB RAM, 1TB SSD
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Én is most ismerkedek a pythonnal és én se tudtam volna elsőre tökéletesen megcsinálni, pl a random string generálást eddig nem ismertem. Csak feltűnt, hogy bár létre hoztad a q változót nem hivatkoztál rá.
