最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python獲取linux主機ip的簡單實現(xiàn)方法

 更新時間:2016年04月18日 10:27:35   作者:mo_guang  
這篇文章主要介紹了Python獲取linux主機ip的簡單實現(xiàn)方法,涉及Python使用socket模塊調(diào)用shell命令的相關技巧,需要的朋友可以參考下

本文實例講述了Python獲取linux主機ip的簡單實現(xiàn)方法。分享給大家供大家參考,具體如下:

python有好幾種方法可以獲取主機的ip地址。我常用的一種是通過socket.socket().inet_ntoa()來實現(xiàn),非常方便;但這種方法有個限制就是要把網(wǎng)卡名(比如eth0)作為參數(shù)傳進來。所以加多了一個條件判斷,如果發(fā)現(xiàn)以上方法獲取ip拋異常時,那就用調(diào)起shell命令(ifconfig)和管道,把想要的ip給過濾出來。

import socket
import fcntl
import struct
"""
獲取主機ip地址
參數(shù)ifname: 通過'lo'獲取的為環(huán)回地址, 通過'eth0'獲取的為主機ip地址
"""
def get_ip_address(ifname='eth0'):
  try:
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    return socket.inet_ntoa(fcntl.ioctl(
      s.fileno(),
      0x8915, # SIOCGIFADDR
      struct.pack('256s', ifname[:15])
    )[20:24])
  except:
    ips = os.popen("LANG=C ifconfig | grep \"inet addr\" | grep -v \"127.0.0.1\" | awk -F \":\" '{print $2}' | awk '{print $1}'").readlines()
    if len(ips) > 0:
      return ips[0]
  return ''

更多關于Python相關內(nèi)容感興趣的讀者可查看本站專題:《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進階經(jīng)典教程》及《Python文件與目錄操作技巧匯總

希望本文所述對大家Python程序設計有所幫助。

相關文章

  • python安裝cxOracle避坑總結(jié)不要直接pip install

    python安裝cxOracle避坑總結(jié)不要直接pip install

    這篇文章主要為大家介紹了python安裝cx_Oracle是遇到的一些問題的解決辦法的總結(jié),來幫大家避避坑有需要的朋友可以借鑒參考下,希望能夠有所幫助祝大家多多進步
    2021-10-10
  • Java多線程編程中ThreadLocal類的用法及深入

    Java多線程編程中ThreadLocal類的用法及深入

    這篇文章主要介紹了Java多線程編程中ThreadLocal類的用法及深入,嘗試了自己實現(xiàn)一個ThreadLocal類以及對相關的線程安全問題進行討論,需要的朋友可以參考下
    2016-06-06
  • Python利用魔法方法玩轉(zhuǎn)對象

    Python利用魔法方法玩轉(zhuǎn)對象

    Python中魔法方法(magic method)其實就是那些被雙下劃線包圍的方法,這些魔法方法為類添加了**“魔力”,讓我們可以在面向?qū)ο缶幊讨杏酶雍啙嵉拇a來操作對象,下面我們就來具體了解一下如何利用魔法方法玩轉(zhuǎn)對象吧
    2023-12-12
  • Python Json讀寫操作之JsonPath用法詳解

    Python Json讀寫操作之JsonPath用法詳解

    JSONPath是一種信息抽取類庫,是從JSON文檔中抽取指定信息的工具,提供多種語言實現(xiàn)版本,包括Javascript、Python、PHP和Java,這篇文章主要介紹了Python Json讀寫操作之JsonPath用法詳解,需要的朋友可以參考下
    2023-04-04
  • Python實現(xiàn)日志實時監(jiān)測的示例詳解

    Python實現(xiàn)日志實時監(jiān)測的示例詳解

    觀察者模式:是一種行為型設計模式。主要關注的是對象的責任,允許你定義一種訂閱機制,可在對象事件發(fā)生時通知多個"觀察"該對象的其他對象。本文將利用觀察者模式實現(xiàn)日志實時監(jiān)測,需要的可以參考一下
    2022-04-04
  • Python3常見函數(shù)range()用法詳解

    Python3常見函數(shù)range()用法詳解

    “range函數(shù)是一個用來創(chuàng)建算數(shù)級數(shù)序列的通用函數(shù),這篇文章主要介紹了Python3常見函數(shù)range()用法,需要的朋友可以參考下
    2019-12-12
  • Python可視化Matplotlib散點圖scatter()用法詳解

    Python可視化Matplotlib散點圖scatter()用法詳解

    這篇文章主要介紹了Python可視化中Matplotlib散點圖scatter()的用法詳解,文中附含詳細示例代碼,有需要得朋友可以借鑒參考下,希望能夠有所幫助
    2021-09-09
  • Python實現(xiàn)蒙特卡洛算法小實驗過程詳解

    Python實現(xiàn)蒙特卡洛算法小實驗過程詳解

    這篇文章主要介紹了Python實現(xiàn)基于蒙特卡洛算法過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-07-07
  • Python中線程threading.Thread的使用詳解

    Python中線程threading.Thread的使用詳解

    python的thread模塊是比較底層的模塊,python的threading模塊是對thread做了一些包裝的,可以更加方便的被使用。本文將為大家詳細介紹一下python中的線程threading.Thread()的使用,需要的可以參考一下
    2022-07-07
  • Django視圖擴展類知識點詳解

    Django視圖擴展類知識點詳解

    這篇文章主要介紹了Django視圖擴展類知識點以及實例代碼,需要的朋友們可以學習下。
    2019-10-10

最新評論

嵊泗县| 丹寨县| 奉化市| 盱眙县| 宁海县| 哈密市| 霍山县| 项城市| 佳木斯市| 新丰县| 富民县| 桂林市| 沙河市| 吐鲁番市| 石泉县| 天台县| 汝南县| 马龙县| 太保市| 卫辉市| 德江县| 巴马| 梓潼县| 德惠市| 郸城县| 沅陵县| 伊春市| 巴彦淖尔市| 绍兴市| 上饶县| 丁青县| 甘洛县| 长治县| 阜宁县| 玉山县| 调兵山市| 襄垣县| 兰西县| 乐清市| 横峰县| 青川县|