在Python里面,字符串相加经常会出现'ascii' codec can't decode byte 0xe7 in position 0: ordinal not in range(128)这样的错误,原因呢,是因为相加的字符串中一个是Unicode类型,另外一个是str类型,不同类型相加是会出现报错,要注意的一点是,如果是在函数中定义的字符串肯定是str类型,如果是通过request或者数据库方式获取的字符串,Unicode类型,在对他们进行相加操作前要先进行类型转换,一般可以采用str(
python出输出字符串方式: >>> who='knights' >>> what='NI' >>> print ('we are the',who,'wha say',what,what,what,what) we are the knights wha say NI NI NI NI >>> print ('we are the %s who say %s'% (who,(what+' ')*4)) we are the kni
Python中Unicode字符串 字符串还有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),0 - 255被用来表示大小写英文字母.数字和一些符号,这个编码表被称为ASCII编码,比如大写字母 A 的编码是65,小写字母 z 的编码是122. 如果要表示中文,显然一个字节是不够的,至少需要两个字节,而且
python列表和字符串的三种逆序遍历方式 列表的逆序遍历 a = [1,3,6,8,9] print("通过下标逆序遍历1:") for i in a[::-1]: print(i, end=" ") print("\n通过下标逆序遍历2:") for i in range(len(a)-1,-1,-1): print(a[i], end=" ") print("\n通过reversed逆序遍历:") f