我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Python的系统管理_06_pytho

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Python的系统管理_06_pytho

import subprocess

res =subprocess.Popen(['uname','-sv'],stdout=subprocess.PIPE)

uname = res.stdout.read().strip()


find()和index()::

uname,index('Linux')

uname.find('Linux')

uname.index('asdfasdf')

uname.find('adfasdfasd')


#字符串切分

smp_index = uname.index ('SMP')

uname[smp_index:]

uname[:smp_index]


startswith()和endswith()

这两个方法可以帮助你判断字符串时是否以某一特定子串开始,或是以某一特定子串结束。

some_string = "RaymondLuxury-Yacht"

some_string.startswith("Raymond")

True

some_string.startswith("sdfasdf")

False

some_string.endswith("Luxury-Yacht")

True

some_string.endswith("Raymond")

False


lstrip(),rstrip(),strip()

分别用来删除前导空白,结尾空白,和前后空白的方法。

spacious_string= "\n\t SomeNon-Spacious Text \n \t \r"

spacious_string.lstrip()

spacious_string.rstrip()

spacious_string.strip()


另外可以输入参数删除任何内容。

xml_tag="<some_tag>"

xml_tag.lstrip("<")

xml_tag.lstrip(">")

xml_tag.rstrip("<")

xml_tag.rstrip(">")

嵌套使用,xml_tag.strip("<").strip(">")

xml_tag.strip("<>")

.strip 是删除<>的任意组好即><也将被删除

foo_str ="<foooooooooooo>blah<foo>"

foo_str.strip("<foo>")


upper()方法和lower()方法

对两个字符串进行比较,并且不考虑字符大写或是小写。

upper()将返回字符串的大写。

lower()将返回字符串的小写。


根据某个指定的分隔符对一个字符串进行提取,split()方法可以完成类任务。

comma_delim_string ="pos1,pos2,pos3"

pipe_delim_string ="pipepos1|pipepos2|pipepos3"

comma_delim_string.split(',')

pipe_delim_string.split('|')


split(',',1) 以','为分割,之分割第一个遇到的','

prosaic_string = "Isert your cleverlittle"

prosaic_string.split()#这个默认是用空格来分隔的。

prosaic_string.splitlines()#将会以行为分隔。


join()

some_list = ['one','two','three','four']

','.join(some_list)

','.join(str(i)for i in some_list)#解决输入为数字的错误,显示转换为字符。


replace()替换字符串。

replacable_string = "trancendtalhibernational nation"

replacable_string.replace("nation","natty")


import re#引入正则表达式的使用。

re_string = r"{{(.*?)}}"

some_string = "this is a string with`words` em `bbq`and {jjfa} "

for match inre.findall(re_string,some_string):

print"MATCH->" ,match


表达式转换为对象的编译:

import re

re_obj = re.compile(r"{{(.*?)}}")

some_string = "this is a string with`words` em `bbq`and {jjfa} "

for match in re_obj.findall(some_string):

print"MATCH->" ,match

这种方式速度会很快,

例:

采用timeit 可以测试出一段代码的运行时间。

1截取一段50万行的文本

tail -n 500000 Pa1.log >> 50Wlog.log

编写代码:re_loop_nocompile.py

在ipython下运行

import re_loop_nocompile

timeit -n 5 re_loop_nocompile.run_re()

显示最好的运行效率。1.42 最佳的。


使用linux的time工具对相同代码的测试结果:

测试命令为:

time python re_loop_nocompile.py


编译后的代码性能:

re_loop_compile.py

效率提升至543ms


所以应当在运行正则中使用编译的方式。


在运行正则表达式中r的作用如下例:

import re

raw_pattern = r'\b[a-z]+\b'

non_raw_pattern = '\b[a-z]+\b'

some_string = 'a few little words'

re.findall (raw_pattern , some_string)

re.findall (non_raw_pattern,some_string)


findall()使用:

import re

re_obj = re.compile(r'\bt.*?e\b')

re_obj.findall("time tame tune tinttire")


处理文件:

infile =open("50Wlog.log","r")

print infile.read()

"r"读模式,该值为默认值

"w"写模式

"a"附加模式

写入文件:

outputfile =open("foo_out.txt","w")

outputfile.write("This is \n Some \nRandom \n Output Text \n")

outputfile.close()


"try/finally"代码块

try:

f=open()

f.write()

finally:

f.close()

with 关键词:

from __future__ import with_statment

with open('writeable.txt','w')as f:

f.writer('thisa writeable file \n')

f

f.write("this won't work")


urllib模块,可以提供对网络中文件对象的访问。

import urllib

url_file = urllib.urlopen("http://192.168.112.96/index.html")

urllib_docs = url_file.read()

print urllib_docs


使用ElementTree开始解析XML文件,只须简单的加载和使用parse()对文件进行处理:

from xml.etree import ElementTree as ET

tcusers = ET.parse("Tomcat.xml")

tcusers

xml 以文件名标签开始,并以文件名标签截至。

这里将ElementTree as ET即为前面的对象。

first_user=tcusers.find('/user')

first_user

first_user.attrib

first_user.get('name')

first_user.get('roles')

first_user.get('foo')

first_user.tag

first_user.text

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Python的系统管理_06_pytho

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Python的系统管理_06_pytho

import subprocessres =subprocess.Popen(['uname','-sv'],stdout=subprocess.PIPE)uname = res.stdout.read().strip()find()和in
2023-01-31

Python系统管理

在Linux操作系统上编写shell脚本时, 主要涉及到执行系统命令, 目录和文件操作. 那么在python中怎么办呢, 这主要是几个模块的使用: os, os.path, shutil和sys...os模块包含了大部分的Linux命令,
2023-01-31

Python的系统管理_03_pytho

收录下流程控制语句方便查看和使用:if 语法 if <表达式>:if expression :else:Statement(s)statement(s)如果在条件表达是成立执行IF下语句,不成立执行ELSE下语句。嵌套方式:If... ..
2023-01-31

Python的系统管理_07_pytho

一个通过正则匹配来下载指定页面图片的示例,几个可能出错的地方都用print打印出来,可以观察是否正确。目标站点::http://www.tupian.com/tag/xinggan#引入数据包import reimport urllib#定
2023-01-31

Python的系统管理_10_pytho

01类和对象:面向过程和面向对象的编程:面向过程的编程:函数式编程,C程序等。面向对象的编程:C++,Java,Pyton 等类和对象:是面向对象中的两个重要概念类:是对事物的抽象,比如:汽车模型对象:是类的一个实例,比如:QQ轿车,大客车
2023-01-31

Python的系统管理_02python

上一节,起了几个简单例子,目的是解释Python其实并难,特别适用了Ipython这样一个利器,既然是Python的系统管理,面向系统管理员,Python的优点之一是其交互式解释器,也称作shell,和BASH很像,很符合管理员的操作习惯,
2023-01-31

Python的系统管理_04_pytho

函数:工具集:排序:极值:自定义函数-用户自己编写的预定义的函数-系统自带为什么使用函数:降低编程的难度,代码重用。定义形式:def 函数名(参数列表): #可以没有参数函数体Defadd ():#定义函数C= a+bPrintcAdd()
2023-01-31

Python 系统管理利器Fabric

一、简介Fabric是基于Python 2.5及以上版本实现的SSH命令行工具,简化了SSH了应用程序部署及系统管理任务,它提供了系统基础的操作组件,可以实现本地或远程shell命令,包括命令执行,文件上传,下载及完整执行日志输出等功能。F
2023-01-31

通过python socket 管理系统

目的:通过服务端更改多客户端系统时间,可以通过socket有很多扩展应用下面是script部分一,服务端   #!/usr/bin/python# -*- coding:utf-8 -*- #Version:1.0.
2023-01-31

【19】Python工资管理系统

实验名称:工资管理系统实验要求:Alex 100000Rain 80000Egon 50000Yuan 30000-----以上是info.txt文件-----实现效果:从info.txt文件中读取员工及其工资信息,最后将修改或增加的员工工
2023-01-31

系统财务管理系统的

系统财务管理系统的简介系统财务管理系统是一种用于管理企业财务的软件工具,可以帮助企业实现财务信息的集中管理和控制,提高财务管理效率和准确性。该系统通常包括财务管理模块、会计核算模块、财务报表模块等子系统,可以满足企业的不同财务管理需求。系统财务管理系统的详细说明1.财务管理模块财务管理模块是系统财务管理系统的主体部分,
系统财务管理系统的
2024-01-22

python写一个cmdb管理系统

在人生苦短,我用Python的号召下,自己也学习了python这门语言,也自己写了一个简单cmdb系统,简单说一下这个系统,功能就是资产的增删改查,excel导出、多文件上传、基于密码的终端登录,资产信息自动更新,用户管理,批量命令执行,历
2023-01-31

Python学生管理系统示例

import osstus = [] # 学生信息列表(每个学生的信息以字段存储)def add_stu():sid = input('输入学生学号:')sname = input('输入学生姓名:')sage = input('输入学生
2023-01-31

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录