问题 1:python获取中文字符串长度
第一种:
print len('哈哈'.decode('utf-8')) #unicode格式
print len('哈哈') #utf-8格式
第二种:
value=u'脚本12'
length = len(value)
utf8_length = len(value.encode('utf-8'))
length = (utf8_length - length)/2 + length
print(length)
问题 2:Python字典的合并与拆分
(1) 字典的合并
dict1={1:[1,11,111],2:[2,22,222]}
dict2={3:[3,33,333],4:[4,44,444]}
dictMerged2=dict(dict1, **dict2)
{1:[1,11,111],2:[2,22,222],3:[3,33,333],4:[4,44,444]}
(2) 字典的拆分
base = {'A':1, 'B':2, 'C':3, 'D':4, 'E':5}
subkey = ['C', 'E']
subdict=dict([(key, base[key]) for key in subkey])
{'C': 3, 'E': 5}
问题 3:ASCII码十六进制串转换成字符串String
def ASCII_2_String(ASCII_data):
index = 2
String_char = []
while len(ASCII_data) >= index:
if int(ASCII_data[(index - 2):index], 16) > 127:
break
#十六进制字串转为十进制数字 int(ASCII_data[start:stop], 16)
String_char.append(chr(int(ASCII_data[(index - 2):index], 16)))
index = index + 2
String_data = ''
# print String_data.join(String_char)
return String_data.join(String_char)
# String_HEX = '44:45:41:54:48:51:17:00:00:00:01:00:00:00:1a:ba:49:d9:2e:96:3f:28:db'
# ASCII_String = String_HEX.replace(':', '')
ASCII_String = '77656c636f6d20746f20486f6e676b6f6e6721'
ASCII_2_String(ASCII_String)
[1] python获取中文字符串长度
[2] python 计算字符串长度
[3] Python字典的合并与拆分
[4] ASCII字符集中的功能/控制字符