久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Python中如何調(diào)用Linux命令

 guoran18 2017-11-07

一,、使用os模塊

復(fù)制代碼
In [1]: import os   #導(dǎo)入os模塊

In [2]: os.system('ls')
anaconda-ks.cfg
epel-release-7-5.noarch.rpm
ipython-4.1.2
ipython-4.1.2.tar.gz
pip-8.1.2
pip-8.1.2.tar.gz#md5=87083c0b9867963b29f7aba3613e8f4a.gz
Out[2]: 0

In [3]: a=os.system('ls')   ##得到的是執(zhí)行的命令的返回值,,并不是執(zhí)行結(jié)果
anaconda-ks.cfg
epel-release-7-5.noarch.rpm
ipython-4.1.2
ipython-4.1.2.tar.gz
pip-8.1.2
pip-8.1.2.tar.gz#md5=87083c0b9867963b29f7aba3613e8f4a.gz

In [4]: a   #執(zhí)行l(wèi)s命令的返回值,,成功,為0
Out[4]: 0

In [5]: b=os.popen('ls').readlines()    #將得到的結(jié)果直接賦值給b列表

In [6]: b   #ls執(zhí)行結(jié)果輸出到內(nèi)存,,再全部讀取賦值給b列表
Out[6]:
['anaconda-ks.cfg\n',
 'epel-release-7-5.noarch.rpm\n',
 'ipython-4.1.2\n',
 'ipython-4.1.2.tar.gz\n',
 'pip-8.1.2\n',
 'pip-8.1.2.tar.gz#md5=87083c0b9867963b29f7aba3613e8f4a.gz\n']
復(fù)制代碼

>>>os模塊中常見(jiàn)方法(Linux命令)

os.remove():刪除文件

os.rename():重命名文件

os.walk():生成目錄樹(shù)下的所有文件名

os.chdir():改變目錄

os.mkdir/makedirs:創(chuàng)建目錄/多層目錄

os.rmdir/removedirs:刪除目錄/多層目錄

os.listdir():列出指定目錄的文件

os.getcwd():取得當(dāng)前工作目錄

os.chmod():改變目錄權(quán)限

os.path.basename():去掉目錄路徑,,返回文件名

os.path.dirname():去掉文件名,,返回目錄路徑

os.path.join():將分離的各部分組合成一個(gè)路徑名

os.path.getsize():返回文件大小

os.path.exists():是否存在

os.path.isabs():是否為絕對(duì)路徑

os.path.isdir():是否為目錄

os.path.isfile():是否為文件

 

二,、使用commands模塊

復(fù)制代碼
In [7]: import commands #導(dǎo)入commands模塊

In [8]: c=commands.getoutput('ls')  #ls命令執(zhí)行結(jié)果,,字符串形式賦值給c變量

In [9]: c
Out[9]: 'anaconda-ks.cfg\nepel-release-7-5.noarch.rpm\nipython-4.1.2\nipython-4.1.2.tar.gz\npip-8.1.2\npip-8.1.2.tar.gz#md5=87083c0b9867963b29f7aba3613e8f4a.gz'

In [10]: d=c.split('\n')    #對(duì)變量c,指定分隔符\n分隔,,列表形式賦值給d

In [11]: d
Out[11]:
['anaconda-ks.cfg',
 'epel-release-7-5.noarch.rpm',
 'ipython-4.1.2',
 'ipython-4.1.2.tar.gz',
 'pip-8.1.2',
 'pip-8.1.2.tar.gz#md5=87083c0b9867963b29f7aba3613e8f4a.gz']
復(fù)制代碼

 

三,、read、readline,、readlines區(qū)別

  1,、read()全部取出,放到字符串里

  2,、readline()方法會(huì)將內(nèi)存空間里的內(nèi)容一次性只讀一行,,放到一個(gè)字符串里

  3、readlines()方法會(huì)將內(nèi)存空間里的內(nèi)容一次性全部取出來(lái),,放到一個(gè)列表里

 

 

四,、Python腳本實(shí)踐

1、編寫(xiě)一個(gè)python腳本實(shí)現(xiàn)輸出linux里的所有的用戶的信息,,格式如下:

username is root     uid is 0

username is xiaojin     uid is 200

username is bin     uid is 10

方式一:

復(fù)制代碼
#!/usr/bin/python
import commands
user_str=commands.getoutput('cat /etc/passwd')
user_list=user_str.splitlines()  #列表形式分隔文件內(nèi)容(默認(rèn)按行分隔)
for i in user_list:
  u_info=i.split(':')
  print "username is ",u_info[0],"uid is ",u_info[2]
復(fù)制代碼

方式二:

復(fù)制代碼
#!/usr/bin/python
import os
userlines=os.popen("cat /etc/passwd").readlines()
for i in userlines:
  user_info=i.split(":")
  print "username is",user_info[0],"\tuid is",user_info[2]
復(fù)制代碼

2、數(shù)值腳本

  1.提醒用戶輸入內(nèi)容范圍是0-100

  2.判斷用戶輸入的內(nèi)容,,如果不是數(shù)字給予提醒

  3.輸出用戶輸入的內(nèi)容

復(fù)制代碼
#!/usr/bin/python
u_grade=raw_input("please input your grade:")
if u_grade.isdigit():  #isdigit()將字符串轉(zhuǎn)換成數(shù)的方法
  if 0<=int(u_grade)<=100:
    print "your grade is",u_grade
  else:
    print "please input the range of number 0-100"
else:
  print "It's not a valid number,try again"
復(fù)制代碼

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多