Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:使用'|';到MySql表_Python_Parsing_Extract_Text Files - Fatal编程技术网

Python:使用'|';到MySql表

Python:使用'|';到MySql表,python,parsing,extract,text-files,Python,Parsing,Extract,Text Files,我有一个文本文件,其结构如下: 341|18 Hello world|20090225230048AAnhStI|90|$0.30|10|289|2|2|2|Is that foo or boo bar? 18 |Is it boo foo and foo bar?| |I beleive its foo.|396545163|foo & bar>foo & boo 基本上,每个数据元素由|分隔。我计划使用Python脚本解析这些数据并将其写入表中。根据我从互

我有一个文本文件,其结构如下:

341|18 Hello world|20090225230048AAnhStI|90|$0.30|10|289|2|2|2|Is that foo or 
boo bar?  18 |Is it boo foo and foo bar?|    |I beleive its foo.|396545163|foo 
& bar>foo & boo
基本上,每个数据元素由
|
分隔。我计划使用Python脚本解析这些数据并将其写入表中。根据我从互联网上收集的信息,我不能利用Python的制表符分隔或逗号分隔选项将这样的文件导入MySql数据库

  • 我错了吗
  • 如果是这样,做这样的事情的最佳选择是什么
我的想法是创建一个表,只提取我想从上面的字符串中提取的元素,将其存储在每一列中。但是,我也想知道如何跟踪提取的内容。迭代每个元素时是否使用计数器

我想我会在继续之前问这些问题

我目前的直觉是做以下事情:

import sys

file = open('datafile.txt')
for line in file:
    print line.strip().split('|') 

您当前的代码很好。您还可以使用:


如果您不想进行繁重的操作,可以使用LOAD DATA INFILE将数据加载到表中:我想您应该看看,它有很大的功能。它应该能够使用管道作为分隔符。我刚刚尝试了您输入的代码,但没有真正起作用。感谢csv.reader链接..修复了代码中的错误。。。另外,我仍然有一个问题,那就是如何只获取我想要避免从下面的字符串中提取ignore的字段。。你好|世界|忽略| 101谢谢。。
import csv
with open('datafile.txt', 'rb') as f:
    for row in csv.reader(f, delimiter='|'):
        ...