文本处理用c还是用python

图片[1]-文本处理用c还是用python-uusu优素-乐高,模型,3d打印,编程

文本处理python与c的对比:如下

c++语言:

C++语言实现C++中没有实现split功能的函数,下面用C++STL中的一些函数模拟实现split功能。#include<iostream>#include<string>#include<vector>#include<fstream>usingnamespacestd;/*
@in,src:待分割的字符串
@in,delim:分隔符字符串
@in_out,dest:保存分割后的每个字符串
*/voidsplit(conststring&src,conststring&delim,vector<string>&dest){
stringstr=src;
string::size_typestart=0,index;
stringsubstr;
index=str.find_first_of(delim,start);//在str中查找(起始:start)delim的任意字符的第一次出现的位置
while(index!=string::npos)
{
substr=str.substr(start,index-start);
dest.push_back(substr);
start=str.find_first_not_of(delim,index);//在str中查找(起始:index)第一个不属于delim的字符出现的位置
if(start==string::npos)return;
index=str.find_first_of(delim,start);
}}intmain(){
ifstreaminfile("test.txt",ios::in);
vector<string>results;
stringword;
stringdelim("");
stringtextline;
if(infile.good())
{
while(!infile.fail())
{
getline(infile,textline);
split(textline,delim,results);
}
}
infile.close();
vector<string>::iteratoriter=results.begin();
while(iter!=results.end())
{
cout<<*iter++<<endl;
}
return0;}

python语言:

在Python中有专门的函数split()对字符串进行分割,实现较为简单myfile=open('test.txt','r')allWords=[]line=myfile.readline()whileline:
list=line.split('')
forwordinlist:
ifword[-1]=='\n':
allWords.append(word[:-1])#去掉行末的'\n'
else:
allWords.append(word)
line=myfile.readline()myfile.close()printallWords
原文来自:https://www.py.cn
© 版权声明
THE END
喜欢就支持一下吧
点赞15 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容