草庐IT

encode-compare

全部标签

python - 统一码编码错误 : 'ascii' codec can't encode character u'\u2019' in position 6: ordinal not in range(128)

我正在尝试从TripAdvisor中提取阿姆斯特丹500家餐厅的列表;然而,在第308家餐厅之后,我收到以下错误:Traceback(mostrecentcalllast):File"C:/Users/dtrinh/PycharmProjects/TripAdvisorData/LinkPull-HK.py",line43,inwriter.writerow(rest_array)UnicodeEncodeError:'ascii'codeccan'tencodecharacteru'\u2019'inposition6:ordinalnotinrange(128)我尝试了一些在Sta

python - PySpark — UnicodeEncodeError : 'ascii' codec can't encode character

使用spark.read.csv和encoding='utf-8'将包含外来字符(åäö)的数据帧加载到Spark中,并尝试做一个简单的展示().>>>df.show()Traceback(mostrecentcalllast):File"",line1,inFile"/usr/lib/spark/python/pyspark/sql/dataframe.py",line287,inshowprint(self._jdf.showString(n,truncate))UnicodeEncodeError:'ascii'codeccan'tencodecharacteru'\ufffd'

loops - Python 循环 : idiomatically comparing successive items in a list

我需要遍历对象列表,像这样比较它们:0与1、1与2、2与3等(我正在使用pysvn提取差异列表。)我最后只是遍历一个索引,但我一直想知道是否有某种方法可以做到这一点,这种方法更符合惯用语。是python;我不应该以某种巧妙的方式使用迭代器吗?简单地遍历索引似乎很清楚,但我想知道是否有更具表现力或更简洁的方法来做到这一点。forrevindexinxrange(len(dm_revisions)-1):summary=\svn.diff_summarize(svn_path,revision1=dm_revisions[revindex],revision2=dm_revisions[r

python : How to compare strings and ignore white space and special characters

我想比较两个字符串,这样比较应该忽略特殊字符的差异。也就是说,Hai,thisisatest应该匹配Hai!thisisatest"or"Haithisisatest有没有办法在不修改原始字符串的情况下做到这一点? 最佳答案 这会在进行比较之前删除标点符号和空格:In[32]:importstringIn[33]:defcompare(s1,s2):...:remove=string.punctuation+string.whitespace...:returns1.translate(None,remove)==s2.transl

Python Pandas to_clipboard() UnicodeEncodeError : 'ascii' codec can't encode character

我想将数据框数据传递到剪贴板,以便粘贴到Excel中。问题是,字符'\xe9'导致编码问题,如下所示:>>>df.to_clipboard()Traceback(mostrecentcalllast):File"C:\Python34\lib\site-packages\pandas\util\clipboard.py",line65,inwinSetClipboardhCd=ctypes.windll.kernel32.GlobalAlloc(GMEM_DDESHARE,len(bytes(text))+1)TypeError:stringargumentwithoutanencod

python转换编码:LookupError: unknown encoding: ansi

因为我的cdv文件编码为utf-8,用Excel打开会出现乱码,再转成标准的ANSI编码时,我得到这个错误:代码:importchardetdefconvertEncoding(from_encode,to_encode,old_filepath,target_file):f1=file(old_filepath)content2=[]whileTrue:line=f1.readline()content2.append(line.decode(from_encode).encode(to_encode))iflen(line)==0:breakf1.close()f2=file(ta

python : compare two files with different line endings

我有两个文件。文件test.a和test.b。test.a是在unix机器上预先生成的。test.b由用户生成,在windows和unix机器上都可以生成。我不能使用filecmp.cmp('test01/test.a','test01/test.b')因为它总是返回false,这要归功于不同的行尾。有什么优雅的解决方案吗?如果不是,在比较之前更改unix文件的行尾的最佳方法是什么?谢谢! 最佳答案 假设这两个是文本文件,使用标准的open()和readline()函数应该可以工作,因为除非b被传递,它们使用通用换行符(转换为\n)

python - Pandas to_csv : ascii can't encode character

我正在尝试读取数据帧并将其写入管道分隔文件。一些字符是非罗马字母(`、ç、ñ等)。但是,当我尝试将重音符号写为ASCII时,它就崩溃了。df=pd.read_csv('filename.txt',sep='|',encoding='utf-8')newdf.to_csv('output.txt',sep='|',index=False,encoding='ascii')-------File"",line21,innewdf.to_csv(filename,sep='|',index=False,encoding='ascii')File"C:\Users\aliceell\AppDa

python - Ubuntu、Apache2、Django)致命的 Python 错误 : Py_Initialize: Unable to get the locale encoding ImportError: No module named 'encodings'

我正在尝试使用具有Ubuntu14.04、Apache2、python3.4的AWSEC2设置我的django(1.8)应用程序。当我运行“sudoserviceapache2start”时,页面不断重新加载并且相同的错误消息堆积在“/var/log/apache2/error.log”中。错误信息是[FriAug262016][mpm_event:notice][pidn:tidm]AH00489:Apache/2.4.7(Ubuntu)mod_wsgi/4.5.5Python/3.4.3configured--resumingnormaloperations[FriAug26201

python - 为什么 sys.getdefaultencoding() 与 sys.stdout.encoding 不同?这如何破坏 Unicode 字符串?

我花了几个愤怒的时间寻找Unicode字符串的问题,这些字符串被分解为Python(2.7)对我隐藏的东西,但我仍然不明白。首先,我尝试在我的代码中始终使用u".."字符串,但这导致了臭名昭著的UnicodeEncodeError。我尝试使用.encode('utf8'),但这也无济于事。最后,事实证明我不应该使用任何一个,这一切都会自动解决。然而,我(在这里我需要感谢一位帮助过我的friend)在用头撞墙时确实注意到了一些奇怪的事情。sys.getdefaultencoding()返回ascii,而sys.stdout.encoding返回UTF-8。1.在下面的代码中工作正常,无需