写在前面的话
其实也没有什么可以写的,或者说完全没有价值。因为你只要动一动手指就可以在Google上找到我要写的这些东西。只是我还不习惯好久没有碰我的blog,但是我又不想写没有价值的东西。或许有价值,只是在我一年两不编程的情况下,我会忘记那些我以前很熟悉的操作是怎么完成的,或许混到那个地步我的人生就开始悲剧了吧。总之,成长成我想要的样子我还是需要很长的路要走。
这一篇是会持续更新的,至少为了保证它看起来不那么水,也要让它持续更新
python中的进制转换
1.其他进制转换为10进制
所有的进制转换为10进制都可以归结为下面这条语句:
int(‘需要转换的数字’,原先的进制)
e.g.
#2进制转换为10进制
>>> int(‘1001‘,2)
9
>>> int(‘1010‘,2)
10
#8进制转换为10进制
>>> int("12",8)
10
#16进制转换为10进制
>>> int("fa",16)
250
>>> int("0xab",16)
171
2. 10进制转换为其他的进制
#10进制转换为2进制
>>> bin(10)
‘0b1010‘
#10进制转换为8进制
>>> oct(8)
‘010‘
#10进制转换为16进制
>>> hex(255)
‘0xff‘
3. 其他进制之间的转换
#2进制到16进制之间的转换
>>> hex(0b1001)
‘0x9‘
reference:
http://www.cppblog.com/aaxron/archive/2011/02/28/140785.html
Python中的目录操作
1.获取当目录
使用os.getcwd()
>>> import os >>> path=os.getcwd() >>> path 'D:\\Python27'
2.修改当前的路径
使用os.chdir(‘需要跳转的路径‘)
import os os.chdir('F:/') os.getcwd() 'F:\\'
3.创建子目录
os.makedirs("path")
比如说在你的F:盘下面有一个python的文件夹,你在里面穿件一个test的文件夹可以如下编写:
>>> os.makedirs("test") >>> os.chdir("test") >>> os.getcwd() 'F:\\python\\test' >>> os.listdir(".") []
首先用makedirs()命令来创建一个test目录这个时候用chdir("path")跳转进去可以用getcwd()来查看我们已经执行成功了
4.获取目录中的文件以及子目录的列表
使用os.listdir("path")
注意这里可以包含了隐藏的文件夹
os.listdir("F:/") ['$RECYCLE.BIN', '360Downloads', '7\xd4\xc2\xbf\xce\xb3\xcc', 'Android', 'Androidtool', 'baidu download', 'baidu player', 'Cygwin64', 'Downloads', 'eclipse', 'eclipse-java-juno-SR2-win32-x86_64.zip', 'FFOutput', 'GouWoGames', 'kankan', 'KuGouCache', 'KwDownload', 'LatexWS', 'Media', 'ProgramData', 'python', 'QQMusicCache', 'readelf', 'root', 'System Volume Information', 'VSPath', 'WekaData', 'WOJ', 'workspace', 'YY', '\xbc\xd3\xb9\xcc\xd3\xa6\xd3\xc32', '\xd5\xd5\xc6\xac', '\xc8\xed\xbc\xfe\xb0\xb2\xd7\xb0\xb0\xfc', '\xd1\xb8\xc0\xd7\xcf\xc2\xd4\xd8', '\xcf\xe3\xb8\xdb\xc9\xea\xc7\xeb']
如果你的python文件是放在你所需要的目录里或者说是当前文件夹下,我们要获取器列表可以这么做:
>>> os.getcwd() 'F:\\python' >>> os.listdir(".") ['.metadata', '.project', '.pydevproject', '123', '123.py', 'addfields.py', 'addfileds.py', 'addtest.py', 'databasekeywordsabstract', 'digits', 'digits.zip', 'ex1.py', 'ex2.py', 'ex3.py', 'ex4.py', 'ex5.py', 'ex6.py', 'ex7.py', 'ex7.pyc', 'ex8.py', 'ex9.py', 'ez_setup.py', 'getPath', 'getPath.py', 'keywords.py', 'KNN.py', 'KNN.pyc', 'kNNtest.py', 'new 1.py', 'new.py', 'privacyKeys.py', 'privacyKeys1.py', 'privacyPolicyKeywords1.py', 'PrivacyPolicyTest.py', 'text.txt']
代码获取了路径为python下的所有文件文件及其子目录的列表
5.创建一个新文件
当我们创建好了文件夹之后,要做其中创建一个文件并写入一些内容相当于linux下的touch 命令,这个时候可以借助文件的读写方式来创建它们。
#创建前 >>> os.getcwd() 'F:\\python\\test' >>> os.listdir(".") [] #创建后 >>> file1=open("test1.txt",'w+') >>> os.listdir(".") ['test1.txt']
开始的时候我们没有创建文件,可以看到目录下没有任何东西,我们以读写的方式打开一个文件的时候,这个时候系统就为我们创建了一个文件出来
这个时候你就可以向文件里写入东西了
一般调用的函数就是f.write(string),f.writelines()
>>> file1.write("abcdd") >>> file1.write("hello,world") >>> file1.close()
打开文件你就可以看见相应的内容
注意每次调用一次file1=open("test1.txt",‘w+‘),同一个文件内容是会被清空的。
6.分解路径为目录名和文件名
os.path.split("path")
看到这个,应该很好记忆,将路径分解,所有要有个path,然后分解就是split
>>> a,b=os.path.split("F:\\python\\test\\test1.txt") >>> a 'F:\\python\\test' >>> b 'test1.txt' >>>
如果你写惯了C语言,你会不会觉得有点奇怪,就是左边的那个赋值,它有两个值,一个付给了a,一个给了b,这个就是python自由的地方,其实这里是个list,其实你也可以这么做
>>> portion=os.path.split("F:\\python\\test\\test1.txt") >>> portion[0] 'F:\\python\\test' >>> portion[1] 'test1.txt'
不知道你看明白了没有
7.分解文件名和扩展名
os.path.splitext()
看到这个其实也非常好记忆
split是分割的意思,extension是扩展的意思,要了前3个字母
在来看代码:
>>> portion=os.path.splitext("F:\\python\\test\\test1.txt") >>> portion[0] 'F:\\python\\test\\test1' >>> portion[1] '.txt'
这个东西有什么,看起来有点奇怪,或许你未来的某一天会用到,修改文件的后缀名。
例如我碰到的一个情况,要把apk文件中的classes.dex文件拉出来,apk不好拉,改成zip在把它拖出来。然后就有了下面的这样一段代码
import os files = os.listdir(".") for filename in files: portion = os.path.splitext(filename) if portion[1]==".apk": newname = portion[0] + ".zip" os.rename(filename,newname)
或许你可以看看下面的参考资料,写的不错。
reference:
http://www.cnblogs.com/zhoujie/archive/2013/04/10/python7.html
一写就是2个半小时,或许我真的该写点有价值的东西,时间该用来做更有价值的事情吧~我又不会睡觉了
hey,how is going?
winter is coming. you know what, I miss you.I really miss you, I really miss you so much
maybe this is the most warm winter I have experienced.
The temperature is really wonderful,not too cold, just like that night you said , "hey, let‘s go home"
I think my brain must be damage at that time. Why I responded, oh, I wanted to read some book ?
You know, the KW will be moved before the Christmas, I really miss there. Because of you.
Maybe you never how noisy you are. You always kick the keyboard loudly and quickly. Everytime it
just made me crazy, I always think why you always want to show off your excellent typing skill??
It‘s really very noisy!!haha~ hope every is ok in the other side of the huge earth. maybe you holiday is coming,enjoy it
I miss you, byebye 2014