python动态生成写文件变量

            有这样一种场景,输入一个文件,文件的每行包含多个列,根据某一列进行区分,将这一列相同的行输出到一个文件中。

        因为不知道输入字段的那一列有多少种取值,因此需要动态创建变量,并写文件。

        因为 字典的value值可以重新赋值,因此可以首先判断文件中那一列的取值有多少个,然后将那一列的取值作为key存入字典中,后续使用字典中的这些变量进行写文件。

        代码如下:

#!/usr/bin/env python
#coding:utf-8

import sys,os,re

def process(corpus):
    tmp_dict = dict()
    fin = open(corpus,'r')
    for line in fin:
        time1 = line.strip().split('\001')[-2] 
        if time1 not in tmp_dict:
            tmp_dict[time1] = 1
        else:
            pass 
    fin.close()
    
    print len(tmp_dict) 
    for key in tmp_dict:
        tmp_dict[key] = open(str(key) + ".txt",'a')
        
    fin1 = open(corpus,'r')
    for line in fin1:
        time2 = line.strip().split('\001')[-2]
        tmp_dict[time2].write(line)
    
    for key in tmp_dict:
        tmp_dict[key].close()

if __name__ == '__main__':
    process("fin.txt")
    print 'Done!'
        

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 您好!以下是用Python语言生成py文件的代码: ```python # 定义文件名和文件内容 file_name = "example.py" file_content = "print('Hello, World!')" # 打开文件入内容 with open(file_name, "w") as f: f.write(file_content) # 提示文件已创建成功 print("文件已创建成功:", file_name) ``` 解释一下上面的代码: 首先,我们定义了一个变量 `file_name`,它代表了我们要生成的py文件文件名。在这个例子中,文件名为 `example.py`。 然后,我们定义了一个变量 `file_content`,它代表了我们要在py文件入的内容。在这个例子中,我们只是简单地打印出了一句话 "Hello, World!"。 接着,我们使用Python中的 `open()` 函数打开文件,并指定我们要以入模式打开文件。这个函数会返回一个文件对象,我们可以使用这个对象来操作文件。 在 `with` 语句块中,我们调用了文件对象的 `write()` 方法,将我们要入的内容文件。 最后,我们使用 `print()` 函数提示用户文件已经创建成功,并输出文件名。 希望这个例子对您有所帮助! ### 回答2: 在Python语言中,我们可以使用`open`函数和文件对象的`write`方法来生成py文件。 首先,我们需要使用`open`函数创建一个文件对象,同时指定文件路径和打开文件的模式(以入模式打开文件)。例如,我们可以使用以下代码创建一个名为"example.py"的py文件对象: ```python file = open("example.py", "w") ``` 接下来,我们可以使用文件对象的`write`方法来向文件入内容。可以将Python代码作为字符串传递给`write`方法,该代码即将被入到py文件中。例如,我们可以入一个简单的Python函数: ```python code = ''' def greet(): print("Hello, World!") greet() ''' file.write(code) ``` 最后,我们需要记得在使用完文件后关闭文件对象,以确保文件正确保存。可以使用文件对象的`close`方法来关闭文件。 ```python file.close() ``` 以上的代码片段将生成一个名为"example.py"的py文件,其中包含一个名为"greet"的函数,该函数打印"Hello, World!"。 综上所述,我们可以使用Python语言来生成py文件。通过创建一个文件对象,使用`write`方法入代码,并最后关闭文件对象来完成这个任务。 ### 回答3: 在Python中,我们可以使用编程的方式生成py文件。我们可以使用文件对象的write方法将Python代码文件中,然后将文件保存为py文件。 以下是一个简单的示例: ```python code = ''' def say_hello(name): print("Hello, " + name) ''' filename = "hello.py" with open(filename, "w") as file: file.write(code) print("已成功生成py文件:", filename) ``` 在上面的代码中,我们定义了一个变量`code`,它包含了我们希望生成Python代码。然后,我们指定了要生成的py文件文件名`filename`。 使用`open`函数打开文件时,我们使用了参数`"w"`,表示以入模式打开文件。然后,我们使用`file.write`方法将代码文件中。 最后,我们使用`print`语句确认文件已经成功生成。 运行这段代码后,它将会在当前目录下生成名为`hello.py`的py文件,该文件中包含了我们指定的代码。 这样,我们就用Python语言成功生成了一个py文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值