有没有办法将字符串从大写,甚至部分大写转换为小写?
例如公里 - >公里.
我已经生成了一些JSON,我试图将它拉入JavaScript中的对象.我一直在收到错误.这就是我所拥有的:
var data = '{"count" : 1, "stack" : "sometext\n\n"}';
var dataObj = eval('('+data+')');
Run Code Online (Sandbox Code Playgroud)
这给了我一个错误:
unterminated string literal
Run Code Online (Sandbox Code Playgroud)
有了JSON.parse(data),我看到类似的错误消息:Unexpected token ?Chrome中的" unterminated string literal"和Firefox和IE中的" ".
当我取出\n后sometext,错误消失了两种情况.我似乎无法弄清楚为什么\n制造eval和JSON.parse失败.
使用Python 3.x,我有一个字符串列表,我想对其执行自然的字母排序.
自然排序: Windows中文件的排序顺序.
例如,以下列表是自然排序的(我想要的):
['elm0', 'elm1', 'Elm2', 'elm9', 'elm10', 'Elm11', 'Elm12', 'elm13']
Run Code Online (Sandbox Code Playgroud)
这是上面列表的"排序"版本(我有):
['Elm11', 'Elm12', 'Elm2', 'elm0', 'elm1', 'elm10', 'elm13', 'elm9']
Run Code Online (Sandbox Code Playgroud)
我正在寻找一个行为与第一个类似的排序函数.
我想在python中删除字符串中的字符:
string.replace(',', '').replace("!", '').replace(":", '').replace(";", '')...
Run Code Online (Sandbox Code Playgroud)
但是我必须删除许多字符.我想到了一个清单
list = [',', '!', '.', ';'...]
Run Code Online (Sandbox Code Playgroud)
但是我如何使用list替换中的字符string?
我用过这个:
u = unicode(text, 'utf-8')
Run Code Online (Sandbox Code Playgroud)
但是在Python 3中遇到错误(或者......也许我只是忘了包含一些东西):
NameError: global name 'unicode' is not defined
Run Code Online (Sandbox Code Playgroud)
谢谢.
我有一些使用Unicode标点符号的文本,如左双引号,右引号为撇号,等等,我需要用ASCII格式.Python是否有一个具有明显ASCII替代品的这些字符的数据库,所以我可以把它们全部变成"?".?
Python urllib.quote并且urllib.unquote不能在Python 2.6.5中正确处理Unicode.这是发生的事情:
In [5]: print urllib.unquote(urllib.quote(u'Cataño'))
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
/home/kkinder/<ipython console> in <module>()
/usr/lib/python2.6/urllib.pyc in quote(s, safe)
1222 safe_map[c] = (c in safe) and c or ('%%%02X' % i)
1223 _safemaps[cachekey] = safe_map
-> 1224 res = map(safe_map.__getitem__, s)
1225 return ''.join(res)
1226
KeyError: u'\xc3'
Run Code Online (Sandbox Code Playgroud)
将值编码为UTF8也不起作用:
In [6]: print urllib.unquote(urllib.quote(u'Cataño'.encode('utf8')))
Cataño
Run Code Online (Sandbox Code Playgroud)
它被认为是一个bug并且有一个修复,但不适用于我的Python版本.
我想要的是类似于urllib.quote/urllib.unquote,但正确处理unicode变量,这样代码就可以工作:
decode_url(encode_url(u'Cataño')) == u'Cataño'
Run Code Online (Sandbox Code Playgroud)
有什么建议?
sys.setdefaultencoding('utf-8')在Python 2中存在令人沮丧的设置趋势.任何人都可以列出问题的真实例子吗?论证喜欢it is harmful或it hides bugs听起来不太令人信服.
更新:请注意,这个问题只是关于utf-8,它不是关于改变默认编码"一般情况下".
如果可以,请举一些代码示例.
我正在尝试在python中编写脚本以将utf-8文件转换为ASCII文件:
#!/usr/bin/env python
# *-* coding: iso-8859-1 *-*
import sys
import os
filePath = "test.lrc"
fichier = open(filePath, "rb")
contentOfFile = fichier.read()
fichier.close()
fichierTemp = open("tempASCII", "w")
fichierTemp.write(contentOfFile.encode("ASCII", 'ignore'))
fichierTemp.close()
Run Code Online (Sandbox Code Playgroud)
当我运行此脚本时,我有以下错误:
在范围序数不(128):UnicodeDecodeError错误:0xef在位置13"ASCII"编解码器不能解码的字节
我认为可以忽略编码方法中的ignore参数的错误.但似乎没有.
我对其他转换方式持开放态度.
我有一些混合了英文和没有英文字母的字符串.例如:
w='_1991_??_??2'
Run Code Online (Sandbox Code Playgroud)
如何使用Regex或Python中的任何其他快速方法识别这些类型的字符串?
我不希望将字符串的字母逐个与字母列表进行比较,而是一次性快速地完成.
python ×9
unicode ×3
ascii ×2
python-3.x ×2
string ×2
utf-8 ×2
encoding ×1
javascript ×1
json ×1
list ×1
lowercase ×1
newline ×1
non-english ×1
python-2.x ×1
regex ×1
replace ×1
sorting ×1
uppercase ×1
urllib ×1