python自动化运维培训学习记录-day1

day01  基础一

一、概述

C  语言   代码编译得到机器码,在处理器上直接执行,每条指令控制CPU工作

其他语言  代码编译得到字节码,虚拟机执行字节码并转换成及其码再到处理器上执行

JAVA虚拟机 JVM     python虚拟机 PVM

python版本

CPython   由C语言实现,官方版本

JPython    由JAVA实现, 好处是 可以掉很多JAVA的库

IronPython  由C#实现

。。。。

2.7版本 过度版本,只支持到 2020年,会直接换到起码 3.4版本

2版本和3版本变化

如     2 中  print ‘123‘   到 3 就是  print(‘123‘)    print(‘11‘,‘12‘)

2中需要先申明字符编码才能写中文,而3中直接就可以

2与3某些库名更改了,大小写

Twisted不支持3

安装 装 3.5 和 2.7  双版本

配置环境变量   编辑 path   添加路径目录   如  c:\\python27

linux下

代码中加入

#!/usr/bin/python      指明解释器,才能 ./*.py  执行

#!/usr/bin/env python    这样写法更好,避免 装的版本不在  /usr/bin   下的情况

工具pycharm  社区版 免费

pycharm    按住  ctrl+d 复制一行

tab  缩进    选中多行 按  tab 多行缩进,

shift+tab   反向缩进

按ctrl+某个方法,则可以看到该方法的源代码

变量的标示作用,有意义的名称  复杂的名称下划线的使用  son_of_twins_brother  或驼峰法 SonOfTwinsBrother

  • 变量名只能是 字母、数字或下划线的任意组合
  • 变量名的第一个字符不能是数字
  • 以下关键字不能声明为变量名
    [‘and‘, ‘as‘, ‘assert‘, ‘break‘, ‘class‘, ‘continue‘, ‘def‘, ‘del‘, ‘elif‘, ‘else‘, ‘except‘, ‘exec‘, ‘finally‘, ‘for‘, ‘from‘, ‘global‘, ‘if‘, ‘import‘, ‘in‘, ‘is‘, ‘lambda‘, ‘not‘, ‘or‘, ‘pass‘, ‘print‘, ‘raise‘, ‘return‘, ‘try‘, ‘while‘, ‘with‘, ‘yield‘]

user,passwd = ‘aaa‘,‘123‘

二、编码格式

ASCII     一个字节标示一个字符,一个字节8个bit     一个字节表示的最大数字  255

ASCII 码 127 个字符

中文字符设计为存储在另一张表中,在 ASCII表中有一个位置指向,即如果访问中文字符则访问ASCII中某个位置,再连接到 中文字符的表

如果链接位置出现交叉等情况,则不同国家语言字符出现乱码的情况

Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,规定虽有的字符和符号最少由 16 位来表示(2个字节),即:2 **16 = 65536

则 原本1M的英文文档,就变成2M了

UTF-8,是对Unicode编码的压缩和优化,他不再使用最少使用2个字节,而是将所有的字符和符号进行分类:ascii码中的内容用1个字节保存、欧洲的字符用2个字节保存,东亚的字符用3个字节保存...

python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill  2版本时)

python 开发规范,每一行最多不超过 80个字符

三、用户输入

Python3.0中的写法

user_input = input("input your name:")

print("user input msg",user_input)

2.7版本写法

user_input = raw_input("input your name:")

user_input = input("your name:")       //需要输入变量或数字,直接输入字符串会报错

输入密码时不可见 使用  getpass 库

import getpass

password = getpass.getpass(‘input pass:‘)

四、模块使用

os.system()   先返回执行的结果,再返回 成功的话 返回0  错误返回其他数字

如  aa=os.system()      则 aa 只会保存  返回的状态数字

aa = os.popen("df -h").read()     可以把命令执行的结果保存起来

模块存放的路径  sys.path

一般是在 Python2.7/site-packages

或者 usr/lib/python2.7/dist-packages

sys.path  列表中  第一位是 当前目录,则查找模块的顺序时  按 sys.path 列表先找 当前目录,找到一个就不继续找了

tab补全代码

#!/usr/bin/env python # python startup file import sys
import readline
import rlcompleter
import atexit
import os
# tab completion
readline.parse_and_bind(‘tab: complete‘)
# history file
histfile = os.path.join(os.environ[‘HOME‘], ‘.pythonhistory‘)
try:
readline.read_history_file(histfile)
except IOError:
passatexit.register(readline.write_history_file, histfile)
del os, histfile, readline, rlcompleter

五、格式化字符串

站位符 %s   字符串

%d   数字

%f   浮点数

pip install readline     使用  pip 安装

#pip python安装后就会有,需要配置环境变量    pip也有版本的区别

六、基本的if 判断及循环语句

if

elif

else

循环

for i in range(10):       将 range中的值 逐个取出来赋值给 i

break 和 continue

while

死循环

while True:

print ‘123‘

在线画流程图     processon.com

时间: 2024-10-13 13:11:22

python自动化运维培训学习记录-day1的相关文章

python自动化运维培训学习记录-day2

day02  基础二 一. .pyc 文件简介 3版本中   .pyc 会 移到    __pycache__ 目录下,名称 为  *.cpython-32.pyc java是通过编译器编译成字节码文件,然后在运行时通过解释器给解释成及其文件,所以JAVA是一种先编译后解释的语言 python和Java/c# 一样,也是一门基于虚拟机的语言, 而python执行时先自动编译,执行py 脚本时,其实是激活了python的解释器,告诉解释器,你要开始工作了,可在解释之前,其实执行的第一项工作和jav

Python自动化运维课程学习--Day2

本文为参加老男孩Python自动化运维课程第二天学习内容的总结. 大致内容如下: 1.python模块初识 2.python程序运行流程 3.python数据类型(只讲了numbers, bool, strings, bytes, list, tuple, dict, set) 4.python数据运算 0.关于本文中所有运行Python代码的环境: --操作系统:Ubuntu 16.10 (Linux 4.8.0) --Python版本:3.5.2 --Python IDE: PyCharm

Python自动化运维课程学习--Day3

本文为参加老男孩Python自动化运维课程第三天学习内容的总结. 大致内容如下: 1.文件操作 2.字符编码转码相关操作 3.函数 0.关于本文中所有运行Python代码的环境: --操作系统:Ubuntu 16.10 (Linux 4.8.0) --Python版本:3.5.2 python2.7.12 --Python IDE: PyCharm 2016.3.2 一.文件操作: 1.文件操作流程:以只读.写(覆盖写).追加写.读写.追加读写.二进制读写等模式打开文件 ==> 得到文件句柄,并

Python自动化运维Django入门

随着IT运维技术日益更新,近几年运维自动化越来越火,而且学习python的人非常的火爆,尤其是python自动化运维开发,得到了很多前辈的推崇,尤其是老男孩培训中心.老男孩老师.Alex老师等,在这里非常感谢你们. 这里我也记录一下以前学习Django的一点点心得和方法,方便以后自己查阅,如果能帮助初学者是最好的了!好的,其他不多说了,博文滴走起. 一.系统实战环境 系统版本:CnetOS6.5 x86_64 Django版本:Django-1.5.8 MySQL版本:MySQL-5.1.73

电子书 Python自动化运维:技术与最佳实践.pdf

本书在中国运维领域将有"划时代"的重要意义:一方面,这是国内一本从纵.深和实践角度探讨Python在运维领域应用的著作:一方面本书的作者是中国运维领域的"偶像级"人物,本书是他在天涯社区和腾讯近10年工作经验的结晶.因为作者实战经验丰富,所以能高屋建瓴.直指痛处,围绕Python自动化运维这个主题,不仅详细介绍了系统基础信息.服务监控.数据报表.系统安全等基础模块,而且深入讲解了自动化操作.系统管理.配置管理.集群管理及大数据应用等高级功能.重要的是,完整重现了4个

Python自动化运维开发活动沙龙(2015-07-11周六)

Python自动化运维开发活动沙龙 2015-07-11(周六) 场地限制,最多仅限50人参加,报名从速! 亲,已是2015年了,做为运维工程师的你还在手动装机器.配服务.看监控.帮开发人肉上线么?还在发愁如何把每天重复的工作自动化起来么?还在想对开源软件进行二次开发定制却无能为力么?还在对开发人员提出的各种无理需求想进行反驳却因为自己不懂开发却被人鄙视么?还在为自己天天努力工作.到处救火却每月只能挣个十来K而感到不爽么? Maybe yes,maybe no! 但是不要不爽了,你的工资不高是因

python自动化运维之路~DAY7

python自动化运维之路~DAY7 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.客户端/服务器架构 C/S 架构是一种典型的两层架构,其全称是Client/Server,即客户端服务器端架构,其客户端包含一个或多个在用户的电脑上运行的程序,而服务器端有两种,一种是数据库服务器端,客户端通过数据库连接访问服务器端的数据:另一种是Socket服务器端,服务器端的程序通过Socket与客户端的程序通信. C/S 架构也可以看做是胖客户端架构.因为客户端需要实现绝大多数的业务

python自动化运维之路~DAY10

python自动化运维之路~DAY10 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.

python自动化运维之集中病毒扫描

1.因为我linux的python是2.6.6,所以因为有些模块是2.7的,先进行升级. 步骤地址:http://www.linuxidc.com/Linux/2014-07/104555.htm 2.安装pyclamd yum install -y clamav clamd clamav-update 安装clamavp的相关程序包 chkconfig --level 235 clamd on /usr/bin/freshclam pyClamd-0.3.15.tar.gz安装包安装 3.vi