2016-04-06 22 views
-3

Bir dat dosyası var ve içeriği Python programında açmak istiyorum.Python'da bir dat dosyası nerede ve nasıl okunmalı?

ben 2 soru var:

Ben dat dosyasını yerleştirmelidir klasör
  1. ?

  2. İçeriği Python programında okuyabilmeniz için hangi kodu kullanmalıyım?

+4

** 1 ** nereye sen ** 2 ** Bu dosyanın biçimine bağlıdır. Dat * * format * – Biffen

+0

Cevabınız için teşekkürler :) –

cevap

1

1. istediğin yere dosyayı yerleştirebilirsiniz. Geçerli çalışma dizininin göreli ya yolunu vermek gerekecek -

path/to/file.dat 

Yoksa dosyanın mutlak yolunu kullanabilir -

/path/to/file.dat 


2.

with open('/path/to/file', 'r') as file: #file is the variable 
    for line in file:      #Iterate over the lines in file 
     ... 
     do something 
     ... 
+0

Cevabınız için teşekkürler :) –

0
  1. Nerede isterseniz . Dosya adı dizesinde yol vermelisiniz.

  2. Eğer dosya biçimini bilmiyorsanız:

    with open("/folder1/folder2/filename.dat", "rb") as f: 
        data = f.readlines() 
    

CSV, XML, dokümanın okuma için diğer yöntemler vardır ...

+0

kodda dors rb temsil eder? –

+0

rb = İkili modda okunur. Çünkü dosyanızın formatını bilmiyorum, bu yüzden rb'yi kullanıyorum. Dosya sadece bir metin dosyasıysa. Sadece "r" kullanabilirsiniz – qvpham

+0

Cevabınız için teşekkürler :) –

0
  1. Herhangi dosyayı size Python'da okumak isteyebilirsiniz. Prensip olarak yerleştirebileceğiniz herhangi bir yere yerleştirilebilir. Eğer söyleniyorsanız, yeni iseniz, en kolay şey python kodunuzla aynı klasöre yerleştirmektir, çünkü o klasördeki kodu çağırırsanız dosya adı dışında bir şey belirtmeniz gerekmez. dat dosyası ham metin ise o zaman aşağıdakileri yapabilirsiniz gedit veya notepad gibi bir editör kullanırken

  2. (yani. veri okunabilir.

    filepath = "mydatfile.dat" # if it is in same folder as you are calling the code from. 
    #otherwise write the relative or absolute path to the file eg: "folder1/folder2/mydatfile.dat" 
    
    with open(filepath,'w') as f: 
        for line in f: 
         # do something with each line. 
         print(line) 
        #if you want to read the whole text in in one go you could do something like: 
        #text = f.read() 
    
+0

Ben w değil, 'r' modu kullanmak demek olduğunu düşünüyorum? ('w' dosyayı yok edecektir) – mhawke

+0

Cevabınız için teşekkürler :) –

İlgili konular