刚刚学了下python的语法,做了一个登录X时候切换窗口管理器的脚本。

1. 脚本全文如下:


  1. coding=utf-8
  2. 用于自动为makefile添加filename和outname

 

  1. # coding=utf-8 
  2. # 用于自动为makefile添加filename和outname 
  3. import sys 
  4. import os 
  5.  
  6. if len(sys.argv)==1
  7.     sys.exit(0
  8.  
  9. a=sys.argv[1
  10. mf=os.environ['HOME']+'/.xinitrc' 
  11. mlist={"a":"awesome","f":"startfluxbox","k":"startkde","x":"startxfce4","i":"i3"
  12.  
  13. if mlist.has_key(a): 
  14.     f=file(mf,'rw'
  15.     mstr=f.readlines() 
  16.     f.close() 
  17.     f=file(mf,'w'
  18.     del mstr[len(mstr)-1
  19.     mstr.append('exec '+mlist[a]) 
  20.     f.writelines(mstr) 
  21.     f.close() 
  22. else
  23.     sys.exit(0

2. 主要用到了以下几个方法:

  1. 获取用户主目录,以及一些系统变量:os.environ['HOME']
  2. 字典的用法:
    1. 建立字典 m={"name1":"value1","name2":"value2"}
    2. 查询字典 m.has_key("value)
  3. 列表的用法:
    1. 读取文件到列表 mstr=f.readlines()
    2. 删除列表中的项目 del mstr[index]

3. 还有如下的问题没有解决:

  1. 只打开一次文件就完成读取和写入。不知道为何不能直接用'rw'实现。