CONNEXION
  • RetourJeux
    • Tests
    • Soluces
    • Previews
    • Sorties
    • Hit Parade
    • Les + attendus
    • Tous les Jeux
  • RetourActu
    • Culture Geek
    • Astuces
    • Réalité Virtuelle
    • Rétrogaming
    • Toutes les actus
  • RetourHigh-Tech
    • Actus JVTECH
    • Bons plans
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTECH
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch
    • Xbox Series
    • Overwatch 2
    • FUT 23
    • League of Legends
    • Genshin Impact
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • PS4
  • One
  • Switch
  • Wii U
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Etoile Abonnement RSS

Sujet : [Python] Erreur au lancement du fichier .py

DébutPage précedente
1
Page suivantePage suivante
Kermit-et-peggy Kermit-et-peggy
MP
Niveau 7
28 septembre 2020 à 13:26:20

Bonjour je galère depuis ce matin à lancer un script :-(

le script:

!/usr/bin/env python3
# Author: AnalogMan
# Modified Date: 2019-09-07
# Purpose: Compress/Decompress DDSZ files for Switch 
# Requirements: LZ4 (pip install lz4)

import sys, os, lz4.block, argparse

def main():
    print('\n======== DDSZ Archive Tool ========\n\n')

    if sys.version_info <= (3,1,0):
        print('Python version 3.1.x+ needed to run this script.\n\n')
        return 1    
    
    # Arg parser for program options
    parser = argparse.ArgumentParser(description='Process DDSZ files with LZ4')
    parser.add_argument('filename', help='Path to file')

    # Check passed arguments
    args = parser.parse_args()

    # Check if required files exist
    if os.path.isfile(args.filename) == False:
        print('File cannot be found.\n')
        return 1
    
    filename = args.filename

    # If DDSZ, decompress RAW block
    if (filename[-4:].lower()) == 'ddsz':
        try:
            with open(filename, 'rb') as f:
                compressed = f.read()
            with open(filename[:-4] + 'dds', 'wb') as f:
                f.write(lz4.block.decompress(compressed[4:]))
            print('DDS file decompressed successfully.\n\n')
        except:
            print('Could not decompress file.\n\n')

    # If DDS, compress to DDSZ and include filesize.
    elif (filename[-3:].lower()) == 'dds':
        try:
            with open(filename, 'rb') as f:
                decompressed = f.read()
            with open(filename[:-3] + 'ddsz', 'wb') as f:
                compressed = lz4.block.compress(decompressed)
                f.write((len(compressed)+4).to_bytes(4, byteorder='little', signed=True))
                f.write(compressed)
            print('DDS file compressed successfully.\n\n')
        except:
            print('Could not compress file.\n\n')
    else:
        print('Unsupported file.\n')
        return 1

if __name__ == "__main__":
    main()

Lorsque j'essaye de l’exécuter sur le shell j’obtiens cette erreur :

usage: DDSZ.py [-h] filename
DDSZ.py: error: the following arguments are required: filename

Le script vient pas de moi mais de cette page https://github.com/AnalogMan151/DDSZ_Tool/blob/master/DDSZ.py

Si quelqu'un aurait la gentillesse de m'aider :-)

El_Camino El_Camino
MP
Niveau 10
28 septembre 2020 à 14:39:00

le message est clair, il faut indiquer le nom du ficher quand tu lances le script

Kermit-et-peggy Kermit-et-peggy
MP
Niveau 7
28 septembre 2020 à 14:47:02

Quand je le lance avec double click il se referme

cybevil cybevil
MP
Niveau 17
28 septembre 2020 à 15:08:12

Normal tu dois faire les compressions et décompressions à partir du shell.
Avec la commande :

Pour Compresser :
python NomduScript.py NomFichierACompresser

Pour DéCompresser :
python NomduScript.py NomFichierADéCompresser

Kermit-et-peggy Kermit-et-peggy
MP
Niveau 7
28 septembre 2020 à 15:24:43

Le 28 septembre 2020 à 15:08:12 cybevil a écrit :
Normal tu dois faire les compressions et décompressions à partir du shell.
Avec la commande :

Pour Compresser :
python NomduScript.py NomFichierACompresser

Pour DéCompresser :
python NomduScript.py NomFichierADéCompresser

Tu peux me dire la ligne exate que je dois taper avec se script pour décompresser ,je suis une brèle ...

Message édité le 28 septembre 2020 à 15:29:15 par Kermit-et-peggy
cybevil cybevil
MP
Niveau 17
28 septembre 2020 à 15:37:20

Pas de soucis, d'abord place ton fichier de script python et tes fichiers à décompresser dans le même dossier.
Puis donne moi leurs noms.

Kermit-et-peggy Kermit-et-peggy
MP
Niveau 7
28 septembre 2020 à 15:46:23

le fichier que j'aimerai décompresser se nomme d5w028_0_old.ddsz

cybevil cybevil
MP
Niveau 17
28 septembre 2020 à 15:46:56

Et ton fichier de script python ?

Kermit-et-peggy Kermit-et-peggy
MP
Niveau 7
28 septembre 2020 à 15:49:12

DDSZ.py

cybevil cybevil
MP
Niveau 17
28 septembre 2020 à 15:49:51

D'accord, est-ce que tu sais te déplacer dans l'invite de commande (cmd) avec les commande "cd" et "dir" ?

Kermit-et-peggy Kermit-et-peggy
MP
Niveau 7
28 septembre 2020 à 15:51:19

Non pas vraiment
"cd" s'est pour crée non?

cybevil cybevil
MP
Niveau 17
28 septembre 2020 à 15:52:33

Non mais c'est assez simple, dir te permet d'afficher les dossier du répertoire dans lequel tu es et "cd nomDossier" te permet de rentrer dans un dossier.

Tu dois ouvrir une invite de commande et te déplacer jusqu'au dossier où se trouve tes fichiers.

Message édité le 28 septembre 2020 à 15:55:56 par cybevil
Kermit-et-peggy Kermit-et-peggy
MP
Niveau 7
28 septembre 2020 à 15:57:08

powershell c'est bon?

j'ai mit mon dossier DDSZ TOOL qui contient DDSZ.py et d5w028_0_old.ddsz dans la racine de D:

Message édité le 28 septembre 2020 à 15:59:32 par Kermit-et-peggy
cybevil cybevil
MP
Niveau 17
28 septembre 2020 à 16:00:17

Oui powershell ça devrais être bon.
En fait le truc à verifier c'est que "C:\Users\nomUser\Desktop\testDecompresse" soit bien le chemin vers l'endroit qui contient tes fichiers.

Une fois que c'est bon, tu peux écrire : python DDSZ.py d5w028_0_old.ddsz

Message édité le 28 septembre 2020 à 16:00:59 par cybevil
Kermit-et-peggy Kermit-et-peggy
MP
Niveau 7
28 septembre 2020 à 16:06:22

Desktop s'est le bureau non?

cybevil cybevil
MP
Niveau 17
28 septembre 2020 à 16:07:34

Le 28 septembre 2020 à 16:06:22 kermit-et-peggy a écrit :
Desktop s'est le bureau non?

Oui oui, entraine toi peut-être à te déplacer dans les dossiers du powershell, puis essaye se que j'ai écrit, ça devrait marcher

Kermit-et-peggy Kermit-et-peggy
MP
Niveau 7
28 septembre 2020 à 16:23:16

Merci c'est bon ça fonctionne
Merci de ta patiente

DébutPage précedente
1
Page suivantePage suivante
Répondre
Prévisu
?
Victime de harcèlement en ligne : comment réagir ?
Infos 0 connecté(s)

Gestion du forum

Modérateurs : godrik, LGV
Contacter les modérateurs - Règles du forum

Sujets à ne pas manquer

La vidéo du moment