问题列表 - 第5257页

如何在python中将巨大的文件更改为csv

我是python的初学者.我有一个巨大的文本文件(数百GB),我想将文件转换为csv文件.在我的文本文件中,我知道行分隔符是一个字符串"<> <> <> <> <> <> <>".如果一行包含该字符串,我想用"替换它".有没有办法这样做而不必读取旧文件并重写新文件.

通常我认为我需要做这样的事情:

fin = open("input", "r")
fout = open("outpout", "w")
line = f.readline
while line != "":
   if line.contains("<><><><><><><>"):
      fout.writeline("\"")
   else:
      fout.writeline(line)
   line = f.readline
Run Code Online (Sandbox Code Playgroud)

但复制数百GB是浪费.另外我不知道open是否会占用大量内存(它是否将文件处理程序视为流?)

任何帮助是极大的赞赏.

注意:文件的一个例子是

file.txt
<><><><><><><>
abcdefeghsduai 
asdjliwa
1231214 ""
<><><><><><><>
Run Code Online (Sandbox Code Playgroud)

将是csv中的一行和一列.

python csv file

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

Delphi - 找不到类TListView

我们有一个Delphi 5应用程序,它是在没有运行时包,dll或外部资源(即单个可执行文件)的情况下构建的.当我们在客户端PC上安装它时,我们收到以下错误消息:

找不到类TListView

要么

未找到类TImage

我们已经将它安装在几十台PC上,没有发生任何事故,但这次最新安装存在问题.

目标PC是全新安装的Windows XP(Service Pack 3),没有安装其他软件.

它并没有抱怨所有的课程,只有一两个.例如TPanel/TForm/TEdit都可以.

任何人都可以认为是什么导致了这个

编辑

新PC上的exe是我知道的30多台其他PC,包括Windows XP Sp1,2,3,Windows Vista和嵌入式Windows.旧版和新版PC都安装了旧版本,然后使用最新版本进行更新.唯一的区别是最新安装的版本跳转更高.

delphi delphi-5

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

我如何在Kaxaml中引用不同的DLL

我想在Kaxaml中使用DataGrid.我如何参考工具包DLL?

xaml xaml-tools kaxaml

7
推荐指数
3
解决办法
4367
查看次数

Sum()导致异常,而不是在没有行时返回0

我有这个代码(好吧,我没有,但类似的东西:p)

    var dogs = Dogs.Select(ø => new Row
    {
            Name = ø.Name,
            WeightOfNiceCats = ø.Owner
              .Cats
              .Where(æ => !æ.Annoying)
              .Sum(æ => æ.Weight),
    });
Run Code Online (Sandbox Code Playgroud)

在这里,我通过所有的狗,并总结所有不讨厌的猫的重量(进入一个不可空的小数),与猫拥有相同的所有者.当然,几乎所有的猫都很烦,所以我得到这个错误:

无法将null值分配给类型为System.Decimal的成员,该成员是非可空值类型.

使用的字段或外键都不能为空.因此,当Where子句没有返回猫时会发生错误,而这通常会发生.但是我该如何解决这个问题呢?当发生这种情况时,我希望它返回0.试过DefaultIfEmpty()后面的Where条款,但后来我得到这个错误:

你调用的对象是空的.

我猜这是可以理解的.我试图添加一个??Sum,但由于这个错误它不会编译:

接线员'??' 不能应用于'decimal'和'decimal'类型的操作数

这当然也是有道理的.那我该怎么办?如果Sum事情只是在没有任何要求的情况下返回0 就会很好.或某种SumOrZero声明.制作一个适用SumOrZero于Linq2SQL 的方法会不会很难?

c# nullreferenceexception linq-to-sql

18
推荐指数
2
解决办法
6040
查看次数

我应该忽略偶尔出现的无效视图状态错误吗?

每隔一段时间(每天一次)我们在ASP.NET 3.5应用程序的日志中看到以下类型的错误

  • 视图状态无效
  • 无效的回发或回调参数

这些东西是否只是偶尔发生在ASP.NET应用程序中?有人会建议我们花很多时间来诊断导致问题的原因吗?

asp.net viewstate error-handling

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

当使用其他数据库(例如Oracle)时,Firebirds"STARTING WITH"的等价物是什么?

我正在调查更新我们的应用程序以使用Firebird以外的数据库服务器的可能性.我们依靠"STARTING WITH"来访问我们的分层数据.没有它,我看不出如何在没有经过一些严肃的重新设计的情况下迁移到另一个数据库.

如果您不熟悉"STARTS WITH",它只是检查字符串字段是否以特定字符串开头,例如......

WHERE 'This is a test' STARTS WITH 'This is' ... 
Run Code Online (Sandbox Code Playgroud)

会回归真实.如果列已建立索引,则索引将用于比较.

其他数据库服务器(尤其是Oracle/MSSQL)是否支持"STARTING WITH"(或"STARTS WITH")?

database oracle firebird

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

使用g ++在Windows上创建文件,链接库

我已经厌倦了MSVC++ 6以及每个人总是告诉我这是一个糟糕的编译器等等.

所以现在我决定尝试使用vim plus g ++和makefile.这是我的问题; 我有以下makefile:

# This is supposed to be a comment..
CC = g++
# The line above sets the compiler in use..
# The next line sets the compilation flags
CFLAGS=-c -Wall

all: main.exe

main.exe: main.o Accel.o
    $(CC) -o main.exe main.o Accel.o 

main.o: main.cpp Accel.h
    $(CC) $(CFLAGS) main.cpp

Accel.o: Accel.cpp Accel.h
    $(CC) $(CFLAGS) Accel.cpp

clean:
    del main.exe *.o
Run Code Online (Sandbox Code Playgroud)

这在尝试时会出错make,因为我需要链接到一个Ws2_32.lib所需的Windows库,这是Winsock2.hinclude在我的一个.h文件中所需要的.

那我该怎么做?我已经尝试过这个-l选项,但我无法让它发挥作用.它如何与具有空格的路径一起使用?

c++ windows makefile g++

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

当应用程序在iphone上崩溃时如何发送电子邮件?

前几天我正在使用一个应用程序崩溃,但是当它崩溃时还要求发送一封包含崩溃信息的电子邮件.

有谁知道这是怎么做的?

也许它是代码中的异常处理程序,在它让应用程序死掉之前,发送了电子邮件,但只是想知道iphone sdk中是否有任何onCrash类型的挂钩.

谢谢,克里斯

iphone objective-c

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

"loginrand"名称在当前上下文中不存在

我只是尝试为travian创建bot,我找到了一些登录代码

        //download html 
        WebClient client = new WebClient();
        client.Encoding = System.Text.Encoding.UTF8;
        string source = client.DownloadString(@"Http://" + server + "/login.php");
        source = source.Replace("\"", "");

        //search for user

        Regex rloginName = new Regex(@"name=login value=\w*");
        Match mloginName = rloginName.Match(source);
        if (mloginName.Success)
        {
            string loginName = mloginName.ToString().Replace(@"name=login value=", "");
        }

        //search for pass

        Regex rloginPassword = new Regex(@"type=password name=\w*");
        Match mloginPassword = rloginPassword.Match(source);
        if (mloginPassword.Success)
        {
            string loginPassword = mloginPassword.ToString().Replace(@"type=password name=", "");
        }

        Regex rloginUsername = new Regex(@"input class=fm fm110 type=text name=\w*");
        Match mloginUsername …
Run Code Online (Sandbox Code Playgroud)

.net c#

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

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