[Python] Output su file di testo

mariolino1988

Bannato a Vita
172
1
salve amici spero che qui mi dareste un aiuto ho fatto questo codice vorrei che il contenuto del codice si vedrebbe in un fil txt grazie
Python:
import socket
                                         
import shutil 
 
hostname=socket.gethostname()
IPAddr=socket.gethostbyname(hostname)
print("Your Computer Name is:"+hostname)
print("Your Computer IP Address:"+IPAddr)
shutil.copy ('mariolino.py', 'test.txt')
 
Ultima modifica da un moderatore:

Hero467

Utente Attivo
689
404
OS
I use ARCH btw
Posto che non ho ben capito perché copiare il contenuto di un file .py in un file .txt, visto che ce l’hai sul file .py stesso.
Comunque ciò che vuoi fare tu si potrebbe fare senza librerie.

Python:
import socket
import sys

hostname=socket.gethostname()
IPAddr=socket.gethostbyname(hostname)
print("Your Computer Name is:"+hostname)
print("Your Computer IP Address:"+IPAddr)

with open(sys.argv[0], 'r') as file:
    file_content = file.read()

with open('newfile.txt', 'w') as file:
    file.write(file_content)

Se invece tu vuoi solamente copiare le informazioni che ti compaiono in console invece di tutto il file:

Python:
import socket

hostname=socket.gethostname()
IPAddr=socket.gethostbyname(hostname)
print("Your Computer Name is:"+hostname)
print("Your Computer IP Address:"+IPAddr)

with open('newfile.txt', 'w') as file:
    file.write('Your Computer Name is:', hostname)
    file.write('Your Computer IP Address:', IPAddr)
 

mariolino1988

Bannato a Vita
172
1
Traceback (most recent call last):
File "C:/Users/mario/mariolino.py", line 10, in <module>
file.write('Your Computer Name is:', hostname)
TypeError: TextIOWrapper.write() takes exactly one argument (2 given) mi da questo errrore grazie
 

Hero467

Utente Attivo
689
404
OS
I use ARCH btw
Si scusa, un lapsus momentaneo. Sostituisci con queste due righe di codice sia il primo che il secondo write
Python:
file.write('Your Computer Hostname is: ' + hostname)
file.write('Your IP Address: ' + IPAddr)
 

mariolino1988

Bannato a Vita
172
1
with open('newfile.txt', 'w') as file:
file.write('Your Computer Hostname is: ' + hostname)
file.write('Your IP Address: ' + IPAddr) sulla prima riga mi da errore f
 

mariolino1988

Bannato a Vita
172
1
non riesco a scrivertelo perche sulla prima riga mi da l errore ora ti scrivo cosa die
expected an intend block after 'with' statement on line 9
 

Hero467

Utente Attivo
689
404
OS
I use ARCH btw
Come detto sopra riportami tutto il codice. Se proprio non riesci a copiarlo e incollarlo va bene anche una foto, perché così proprio non riesco ad aiutarti
 

mariolino1988

Bannato a Vita
172
1
Python:
import socket

hostname=socket.gethostname()
IPAddr=socket.gethostbyname(hostname)
print("Your Computer Name is:"+hostname)
print("Your Computer IP Address:"+IPAddr)

with open('newfile.txt', 'w') as file:
  
file.write('Your Computer Hostname is: ' + hostname)
file.write('Your IP Address: ' + IPAddr)
ECCOLO PLS AIUTAMI
 

Allegati

  • Screenshot (12).png
    Screenshot (12).png
    171.7 KB · Visualizzazioni: 28
Ultima modifica da un moderatore:

Dumah Brazorf

Utente cAttivo
Utente Èlite
7,656
3,565
Se badi in python non si usano le parentesi graffe per racchiudere le parti di codice quindi è imperativo indentare correttamente il codice altrimenti si perde la relazione questa riga è un sottocomando di quella prima.
 

DispatchCode

Moderatore
Staff Forum
Utente Èlite
2,224
1,855
CPU
Intel I9-10900KF 3.75GHz 10x 125W
Dissipatore
Gigabyte Aorus Waterforce X360 ARGB
Scheda Madre
Asus 1200 TUF Z590-Plus Gaming ATX DDR4
HDD
1TB NVMe PCI 3.0 x4, 1TB 7200rpm 64MB SATA3
RAM
DDR4 32GB 3600MHz CL18 ARGB
GPU
Nvidia RTX 3080 10GB DDR6
Audio
Integrata 7.1 HD audio
Monitor
LG 34GN850
PSU
Gigabyte P850PM
Case
Phanteks Enthoo Evolv X ARGB
Periferiche
MSI Vigor GK30, mouse Logitech
Net
FTTH Aruba, 1Gb (effettivi: ~950Mb / ~480Mb)
OS
Windows 10 64bit / OpenSUSE Tumbleweed

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!