MySQLdb错误 编码问题 linux系统粘贴板 python取环境变量 2016.05.27回顾

来源:互联网 发布:美国大非农数据公布时间 编辑:程序博客网 时间:2024/05/29 10:12

1、上午主要是找了要采购的书籍和开会,但是我觉得方向不应该太杂了,就是做好信用评分卡就已经够吃年薪50W的饭了,目前我觉得我的方向还是应该吃死信用评分卡!顺便还下了下信用评分群里面的资料,那些资料也是蛮不错的,可以为我以后自建评分卡做好铺垫!
2、下午开始改以前系统的编码以及研究编码相关问题,首先顺带解决了,import MySQLdb失败的问题,报错为ImportError: libmysqlclient.so.20: cannot open shared object file: No such file or directory,网上的一般的问题都是ImportError: libmysqlclient.so.18,但是方法都是一样的,先用 find / -name libmysqlclient.so.20找到libmysqlclient.so.20的位置,按名字在/路径下找,然后有两个,我随便找了一个比较像安装目录的,做一个软连接到/usr/lib64/下,参考http://www.111cn.net/database/mysql/60100.htm,这里要判断系统是64位还是32位,方法很多,我试了试uname -a,还有就是/usr/下如果有lib64就是64位系统,如果没有就是32位,参考http://www.centoscn.com/CentOS/help/2014/0701/3231.html
3、解决了这个问题过后,开始解决编码方面的问题,根据昨天的一些实验心得,解决问题确实不是什么难题,也获得了一些新的领悟,比如在python的utf-8编辑环境中b=u’中文’,c = ‘test string %s’ % b,则c整个类型都变成了unicode,还有utf-8编码环境中a = ‘abcdefg’,如果a.encode(‘utf-8’)是不会报错的,但是a是中文的话会把unicodedecode错误,我实在不知道为什么会报这个错,具体是用ascii去decode,不知道内在逻辑是怎样的!
4、linux系统粘贴板,ctrl+insert复制,shift+insert粘贴
5、windows默认情况下文件名都是GBK编码,linux系统编码一般为utf-8,所以文件名也是utf-8编码
6、软连接相关内容参考http://www.jbxue.com/LINUXjishu/14869.html
7、python中获取环境变量,os.getenv(‘环境变量名’)
8、有时候看一个字符串就好比,带了个眼镜,GBK的眼镜下是这样,UTF-8就是那样,GBK其实也是GBK对应的一些字符,只不过是乱码,文本文档windows既能识别utf-8也能识别GBK,linux往往就不可以了,只要python程序中,编码格式和解释器指定格式相同,比如都是utf-8在gbk的系统生成的文件名还是GBK,程序相当于只是告诉了计算机要干什么,就是生成这样文字的文件名,系统会自己去按照自身的编码生成对应的文件名(这句话是错误的,我已经实验证明,在2016.05.30的回顾中作了阐述),整个编码的问题,我可能还需要把这些只言片语好好总结下,最后写成一篇完整的心得!
差不多以上!

0 0