我有多个(40到50个)MP3文件,我想连接成一个文件.在Python中执行此操作的最佳方法是什么?
假设我们有许多文本文件,如下所示:
文件1:
abc
def
ghi
Run Code Online (Sandbox Code Playgroud)
文件2:
ABC
DEF
GHI
Run Code Online (Sandbox Code Playgroud)
文件3:
adfafa
Run Code Online (Sandbox Code Playgroud)
文件4:
ewrtwe
rewrt
wer
wrwe
Run Code Online (Sandbox Code Playgroud)
我们如何制作一个如下文本文件:
结果:
abc
def
ghi
ABC
DEF
GHI
adfafa
ewrtwe
rewrt
wer
wrwe
Run Code Online (Sandbox Code Playgroud)
相关代码可能是:
import csv
import glob
files = glob.glob('*.txt')
for file in files:
with open('result.txt', 'w') as result:
result.write(str(file)+'\n')
Run Code Online (Sandbox Code Playgroud)
在这之后?有帮助吗?
这个问题与Python连接文本文件有关
我有一个清单file_names,比如['file1.txt', 'file2.txt', ...].
我想将所有文件打开成一个文件对象,我可以逐行阅读,但我不想在这个过程中创建一个新文件.那可能吗?
with open(file_names, 'r') as file_obj:
line = file_obj.readline()
while line:
...
Run Code Online (Sandbox Code Playgroud) 我有多达8个单独的Python进程在共享文件夹中创建临时文件.然后我想控制进程将所有临时文件按特定顺序附加到一个大文件中.在os不可知的shell级别上执行此操作的最快方法是什么?
我试图从多个输入文件中读取并将每个文件中的第二行作为表格彼此相邻打印
import sys
import fileinput
with fileinput.input(files=('cutflow_TTJets_1l.txt ', 'cutflow_TTJets_1l.txt ')) as f:
for line in f:
proc(line)
def proc(line):
parts = line.split("&") # split line into parts
if "&" in line: # if at least 2 parts/columns
print parts[1] # print column 2
Run Code Online (Sandbox Code Playgroud)
但我得到一个"AttributeError:FileInput实例没有属性' __exit__'"
我被教过在python中读取文件的最佳方法是做类似的事情:
with open('file.txt', 'r') as f1:
for line in f1:
do_something()
Run Code Online (Sandbox Code Playgroud)
但我一直在想.如果我的目标是将一个文件的内容完全复制到另一个文件,那么执行此操作是否有任何危险:
with open('file2.txt', 'w+') as output, open('file.txt', 'r') as input:
output.write(input.read())
Run Code Online (Sandbox Code Playgroud)
是否有可能以某种方式表现我不期望?
同样,如果文件是二进制文件而不是文本文件,我将如何处理问题.在这种情况下,没有换行符,所以readline()或for line in file不会工作(对吧?).
编辑是的,我知道shutil.如果这正是我想要做的,有许多更好的方法来复制文件.我想特别了解这种方法的潜在风险,因为我可能需要做更高级的事情而不是简单地将一个文件复制到另一个文件(例如将几个文件复制到一个文件中).
我正在从一些类似于以下内容的文本文件中解析日期/时间/测量信息:
[Sun Jul 15 09:05:56.724 2018] *000129.32347
[Sun Jul 15 09:05:57.722 2018] *000129.32352
[Sun Jul 15 09:05:58.721 2018] *000129.32342
[Sun Jul 15 09:05:59.719 2018] *000129.32338
[Sun Jul 15 09:06:00.733 2018] *000129.32338
[Sun Jul 15 09:06:01.732 2018] *000129.32352
Run Code Online (Sandbox Code Playgroud)
结果进入输出文件,如下所示:
07-15-2018 09:05:56.724, 29.32347
07-15-2018 09:05:57.722, 29.32352
07-15-2018 09:05:58.721, 29.32342
07-15-2018 09:05:59.719, 29.32338
07-15-2018 09:06:00.733, 29.32338
07-15-2018 09:06:01.732, 29.32352
Run Code Online (Sandbox Code Playgroud)
我正在使用的代码如下所示:
import os
import datetime
with open('dq_barorun_20180715_calibtest.log', 'r') as fh, open('output.txt' , 'w') as fh2:
for line in fh:
line = line.split()
monthalpha = …Run Code Online (Sandbox Code Playgroud) 我有2个文本文件,如['file1.txt','file2.txt'].我想编写一个Python脚本来将这些文件连接成一个新文件,使用open()等基本函数打开每个文件,通过调用f.readline()逐行读取,并使用f将每行写入该新文件.写().我是python中文件处理编程的新手.有人可以帮我弄这个吗?
我有大约10个CSV文件,我想附加到一个文件中。我的想法是将文件名分配给编号为data_files的文件,然后将它们附加到while循环中,但是我在将文件更新到循环中下一个编号为date_file的文件时遇到了麻烦。我不断收到与“ data_file不存在”和“无法连接'str'和'int'对象”相关的错误。我什至不确定这是否是解决我的问题的现实方法。任何帮助,将不胜感激。
import pandas as pd
path = '//pathname'
data_file1= path + 'filename1.csv'
data_file2= path + 'filename2.csv'
data_file3= path + 'filename3.csv'
data_file4= path + 'filename4.csv'
data_file5= path + 'filename5.csv'
data_file6= path + 'filename6.csv'
data_file7= path + 'filename7.csv'
df = pd.read_csv(data_file1)
x = 2
while x < 8:
data_file = 'data file' + str(x)
tmdDF = pd.read_csv(data_file)
df = df.append(tmpDF)
x += x + 1
Run Code Online (Sandbox Code Playgroud) 我是Python的新手.我有两个文件,我需要将两个文件逐行合并到一个文件中.
file_1.txt:
feel my cold hands.
I love oranges.
Mexico has a large surplus of oil.
Ink stains don't rub out.
file_2.txt:
?ª ¬? º’¿ª ¡ª ??¡Æ?¡.
??«¸ ?Ò«‡±‚?° ??¿ª ?Øæ??¨¥Ÿ.
????ƒ?ø°¥¬ ¥Ÿ?Æ¿« ø©?–¿« ºÆ¿Ø?° ¿÷¥Ÿ.
¿??© ¿?±?¿? ¥€æ?µµ ¡ˆøˆ¡ˆ¡ˆ æ ¥¬¥Ÿ.
FINAL OUTPUT should look like:
feel my cold hands.
?ª ¬? º’¿ª ¡ª ??¡Æ?¡.
I love oranges.
??«¸ ?Ò«‡±‚?° ??¿ª ?Øæ??¨¥Ÿ.
Mexico has a large surplus of oil.
????ƒ?ø°¥¬ ¥Ÿ?Æ¿« ø©?–¿« ºÆ¿Ø?° ¿÷¥Ÿ.
Ink stains don't rub out. …Run Code Online (Sandbox Code Playgroud)