我正在尝试使用.join()
方法将字符串列表连接到一个字符串中。但是,似乎结果仍然是相同的,输出仍然产生一个字母列表而不是一个单词。这是相关的代码:
import sys
import traceback
import weka.core.jvm as jvm
#import wekaexamples.helper as helper
from weka.core.converters import Loader
from weka.classifiers import Classifier
def main(args):
# load a dataset
loader = Loader(classname="weka.core.converters.ArffLoader")
train = loader.load_file("C:/Users/Syahirah/Desktop/Train_FYP.arff")
train.class_index = train.num_attributes - 1
test = loader.load_file("C:/Users/Syahirah/Desktop/Test_FYP_prediction.arff")
test.class_is_last()
# classifier
cls = Classifier(classname="weka.classifiers.bayes.NaiveBayes")
cls.build_classifier(train)
# output predictions
#print("ID - actual - predicted ")
for index, inst in enumerate(test):
#print "\n", inst
varinst = str(inst)
#print type(varinst),varinst
split_inst = varinst.split(',')
kata = split_inst[1]
semua = ' '.join(kata)
print semua
这是输出:
T h e
c u s t o m e r s
a r e
a l l o w e d
t o
r e s e r v e
r o o m
o n l i n e
'
b y
t h e
w a y
t h e y
a b l e
t o
c h a n g e
o r
c a n c e l
t h e i r
r e s e r v a t i o n
所需的输出应该是这样的:
The customers are allowed to reserve room online, by the way they able to
change or cancel their reservation
答案 0 :(得分:2)
在.py文件的第一行添加此行:
from __future__ import print_function
接下来,更改这些行:
semua = ' '.join(kata)
print semua
要:
semua = ''.join(kata)
print(semua, end='')
您希望确保不在不需要的位置添加空格和换行符。