文本处理用c还是用python
文本处理python与c的对比:如下
c++语言:
C++语言实现C++中没有实现split功能的函数,下面用C++STL中的一些函数模拟实现split功能。#include#include#include#includeusingnamespacestd;/*
@in,src:待分割的字符串
@in,delim:分隔符字符串
@in_out,dest:保存分割后的每个字符串
*/voidsplit(conststring&src,conststring&delim,vector&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);
vectorresults;
stringword;
stringdelim("");
stringtextline;
if(infile.good())
{
while(!infile.fail())
{
getline(infile,textline);
split(textline,delim,results);
}
}
infile.close();
vector::iteratoriter=results.begin();
while(iter!=results.end())
{
cout<<*iter++<
}
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
相比较而言,(抛开运行效率不说),开发效率比较好的是Python,然后是c++,(但是一旦c++这些方法提前包装好了,也是很不错的)。
以上内容为大家介绍了文本处理用c还是用python,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。
相关推荐HOT
更多>>python正则表达式中的零宽断言
python正则表达式中的零宽断言1、概念有些元字符不匹配任何字符,只是简单的表示成功或失败,所以这些字符也叫零宽断言。2、符号举例(1)|或操作...详情>>
2023-11-14 11:35:03python方法的绑定和未绑定
python方法的绑定和未绑定1、说明未绑定对象的方法:无self参数的方法,通过定义类调用函数,返回未绑定self的方法。绑定对象的方法:带self参...详情>>
2023-11-14 09:53:02python海象运算符的使用
python海象运算符的使用1、在判断条件下允许操作。在一定程度上简化了代码,但降低了可读性。i=len((l:=[1,2,3]))#先对l进行赋值,在对i赋值whi...详情>>
2023-11-14 02:38:21pythonelif语句报错是什么原因
python的else和elif语句也可以叫做子句,因为它们不能独立使用,两者都是出现在if、for、while语句内部的。else子句可以增加一种选择;而elif子...详情>>
2023-11-13 21:46:35