相关疑难解决方法(0)

Python列表目录,子目录和文件

我正在尝试创建一个脚本来列出给定目录中的所有目录,子目录和文件.
我试过这个:

import sys,os

root = "/home/patate/directory/"
path = os.path.join(root, "targetdirectory")

for r,d,f in os.walk(path):
    for file in f:
        print os.path.join(root,file)
Run Code Online (Sandbox Code Playgroud)

不幸的是,它无法正常工作.
我得到了所有文件,但不是完整的路径.

例如,如果dir结构是:

/home/patate/directory/targetdirectory/123/456/789/file.txt

它会打印:

/home/patate/directory/targetdirectory/file.txt

我需要的是第一个结果.任何帮助将不胜感激!谢谢.

python file path

105
推荐指数
7
解决办法
16万
查看次数

使用不同的文件名在Python中合并CSV文件

我是Python的新手,所以这个问题可能有点基础.我有44个csv文件具有相同的标题和不同的文件名.我想将它们全部合并到一个文件中.

每个文件名为"Votes- [member-name] - (2010-2014) - [download-time] .csv"

标头不包含成员名称的列.我想补充一点,作为第一项.

这是我想要做的部分:如何在Python中合并200个csv文件.我只是不确定如何遍历具有不同名称的文件,并将这些名称添加到csv.

谢谢!

python csv

5
推荐指数
1
解决办法
1997
查看次数

如果数据库发生变化,如何停止执行长进程?

我有一个向RabbitMQ队列发送消息的视图。

message = {'origin': 'Bytes CSV',
           'data': {'csv_key': str(csv_entry.key),
                    'csv_fields': csv_fields
                    'order_by': order_by,
                    'filters': filters}}

...

queue_service.send(message=message, headers={}, exchange_name=EXCHANGE_IN_NAME,
                   routing_key=MESSAGES_ROUTING_KEY.replace('#', 'bytes_counting.create'))
Run Code Online (Sandbox Code Playgroud)

对于我的消费者,我有一个很长的过程来生成 CSV。

def create(self, data):
    csv_obj = self._get_object(key=data['csv_key'])
    if csv_obj.status == CSVRequestStatus.CANCELED:
        self.logger.info(f'CSV {csv_obj.key} was canceled by the user')
        return

    result = self.generate_result_data(filters=data['filters'], order_by=data['order_by'], csv_obj=csv_obj)
    csv_data = self._generate_csv(result=result, csv_fields=data['csv_fields'], csv_obj=csv_obj)
    file_key = self._post_csv(csv_data=csv_data, csv_obj=csv_obj)

    csv_obj.status = CSVRequestStatus.READY
    csv_obj.status_additional = CSVRequestStatusAdditional.SUCCESS
    csv_obj.file_key = file_key
    csv_obj.ready_at = timezone.now()
    csv_obj.save(update_fields=['status', 'status_additional', 'ready_at', 'file_key'])

    self.logger.info(f'CSV {csv_obj.name} created')
Run Code Online (Sandbox Code Playgroud)

长过程发生在 内部self._generate_csv,因为 …

python django multithreading rabbitmq

5
推荐指数
1
解决办法
160
查看次数

使用python合并csv文件而不重复标题

我正在尝试这样做,

import glob

interesting_files = glob.glob("/home/tcs/PYTHONMAP/test1/*.csv") 

header_saved = False
with open('/home/tcs/PYTHONMAP/output.csv','wb') as fout:
    for filename in interesting_files:
        with open(filename) as fin:
            header =  next(fin)
            if not header_saved:
                fout.write(header)
                header_saved = True
            for line in fin:
                fout.write(line)
Run Code Online (Sandbox Code Playgroud)

并得到

File "/home/tcs/.config/spyder-py3/temp.py", line 11, in <module>
    fout.write(header)

TypeError: a bytes-like object is required, not 'str'
Run Code Online (Sandbox Code Playgroud)

我对python不太了解,请帮助我还想知道如何将1个大csv拆分为多个具有相同标题的csv。

python csv split

3
推荐指数
2
解决办法
1万
查看次数

如何连接目录中的所有 CSV,将 CSV 名称添加为 Python 列

  • 我有一个包含大约 100 个 CSV ( Downloads/challenges)的文件夹。
  • 每个 CSV 都有相同的 50 多列。
  • 每个 CSV 的标题类似于azerbaijan_challenge_entrants.csv.

我想创建一个新的 CSV ( all_entrants.csv),其中包含来自所有 100 个 CSV 的所有数据,添加一个新列:challenge,其中应包含行数据来自的 CSV 的名称。

我通常喜欢 Python 来完成这样的任务。但我正在努力完成这项工作。任何帮助,将不胜感激!

python csv pandas

3
推荐指数
1
解决办法
568
查看次数

在 Python 中将行从一个 CSV 附加到另一个

我已经为此查看了许多解决方案,但找不到适合我想做的事情的解决方案。

基本上我有2个CSV文件:

所有.csv

1   Wed Oct 03  41.51093923 41.51093923 41.51093923 41.51093923         
2   Wed Oct 04                          
3   Wed Oct 05  41.43764015 41.43764015 41.43764015             
4   Wed Oct 06  41.21395681 41.21395681 41.21395681             
5   Wed Oct 07  42.07607442 42.07607442 42.07607442             
6   Wed Oct 08  42.0074109  42.0074109  42.0074109              
7   Wed Oct 09  41.21395681 41.21395681                 
8   Wed Oct 10  41.43764015 41.43764015 41.43764015 41.43764015 
9   Wed Oct 11  41.21395681 41.21395681 41.21395681 41.21395681
Run Code Online (Sandbox Code Playgroud)

原始文件

10  Wed Oct 12  41.43764015             
11  Wed Oct 13                  
12  Wed Oct 14  42.07607442 …
Run Code Online (Sandbox Code Playgroud)

python csv merge dataset pandas

3
推荐指数
1
解决办法
3116
查看次数

标签 统计

python ×6

csv ×4

pandas ×2

dataset ×1

django ×1

file ×1

merge ×1

multithreading ×1

path ×1

rabbitmq ×1

split ×1