Python运维开发基础01-语法基础【转】
2021-07-03 08:05
标签:perl bin c语言 centos7 tps 初始 mrc val title 在编译之前,我们先yum安装一些支持程序 升级Python2.7.13 升级Python3.5.2 修复yum仓库的编译错误 在家目录创建如下文件和内容 他们的区别? env是一个查找器,它会自动帮我们去找python这个可执行文件位置 在Linux下创建一个文件叫做hello.py 然后执行命令:python hello.py 指定解释器: 如果想用类似于shell脚本一样的方式执行python脚本,例如:./hello.py,那么就需要在hello.py文件的头部指定解释器,如下: 在交互器中执行代码 除了把程序写在文件中,还可以直接调用python自带的交互器运行代码。 Python是一种强制编译型语言,它不需要像类似C语言一样提前声明变量的类型,而是根据赋值的内容是什么自动确定变量的类型开篇导语
一,Python发展介绍
二,Python的基础环境构建
yum -y install gcc gcc-c++ make autoconf readline readline-devel
2.1 Centos6.5升级Python2.7和Python3.5程序
[root@localhost ~]# tar xf Python-2.7.13.tgz -C /usr/src/
[root@localhost ~]# tar xf Python-2.7.13.tgz -C /usr/src/
[root@localhost Python-2.7.13]# ./configure --prefix=/usr/local/python27
[root@localhost Python-2.7.13]# make && make install
[root@localhost python27]# cd /usr/local/python27/
[root@localhost python27]# python -V
Python 2.6.6
[root@localhost python27]# which python
/usr/bin/python
[root@localhost python27]# mv /usr/bin/python /usr/bin/python26
[root@localhost bin]# ln -s /usr/local/python27/bin/python /usr/bin/python
[root@localhost bin]# python -V
Python 2.7.13
[root@localhost ~]# tar xf Python-3.5.2.tgz -C /usr/src/
[root@localhost ~]# cd /usr/src/Python-3.5.2/
[root@localhost Python-3.5.2]# ./configure --prefix=/usr/local/python35
[root@localhost Python-3.5.2]# make && make install
[root@localhost python35]# cd /usr/local/python35/bin/
[root@localhost bin]# ln -s /usr/local/python35/bin/python3 /usr/bin/python3
[root@localhost bin]# python3 -V
Python 3.5.2
[root@localhost bin]# vim `which yum`
[root@localhost bin]# head -1 `which yum`
#!/usr/bin/python26 #修改这里
2.2 创建Python的vim初始练习环境
[root@localhost ~]# cat ~/.vimrc
set cursorline
set tabstop=4
set shiftwidth=4
set expandtab
function PythonHeader()
call setline(1,"#!/usr/bin/env python3")
call setline(2,"# -*- coding:utf-8 -*-")
call setline(3,"# author:你的名字")
normal G
normal o
normal o
endfunc
autocmd BufNewfile *.py call PythonHeader()
map
三,初识Python
3.1 解析器的写法
#!/usr/bin/env python
#!/usr/bin/python
3.2 第一个Python程序
print("hello world!")
[root@localhost ~]# python3 hello.py
hello world!
#代码演示:
#!/usr/bin/env python3
print ("hello world!")
#输出结果
[root@localhost ~]# ./hello.py
hello world!
[root@localhost ~]# python3
Python 3.5.2 (default, Dec 20 2017, 01:15:07)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print("Hello world!")
Hello world!
3.3 Python的变量
>>> name = 123 #直接赋值数字
>>> type(name)
class ‘int‘> #name为整型
>>> name = "hello world" #赋值字符串
>>> type(name)
class ‘str‘> #name为字符串类型
>>> name = "123" #给数字加双引号
>>> type (name)
class ‘str‘> #也会被Python认为是字符串
>>> name = hello world #如果字母不加双引号,Python会认为是数字,因此报错
File "
变量定义规则:
- 变量名只能是字母,数字或下划线的任意组合
- 变量名的第一个字符不能是数字
- 以下关键字不能声明为变量名
[‘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‘]
关键字是什么?
类似Python程序默认的类型int,str还有系统环境变量等都是关键字
四,思考题与作业:利用Shell实现"模拟用户登录程序"
4.1 shell知识补充
(1)break,continue,return,exit循环控制语句作用演示
(2)脚本库函数functions引用
[root@localhost yunjisuan]# cat test.sh
#!/bin/bash
. /etc/rc.d/init.d/functions
action "服务运行成功!" /bin/true
action "服务运行失败!" /bin/false
[root@localhost yunjisuan]# sh test.sh
服务运行成功! [确定]
服务运行失败! [失败]
4.2 shell实现用户登录验证程序
[root@localhost yunjisuan]# cat login.sh
#!/bin/bash
#user login
User="yunjisuan"
Passwd="666666"
User2="yunjisuan2"
Passwd2="123123"
Lock=""
function Title(){
catfunction Login(){
#用户登录功能模块具体要求:
#0,先判断用户名是否被锁定,如果被锁定,禁止登陆。
#1,判断用户名是否正确,不正确重新输入
#2,已知用户名判断密码是否正确,如果不正确重新输入密码。
#3,密码输入3次如果全都错误,账户锁定(将用户名,放进变量Lock里)
#4,如何放进变量里:Lock="$Lock $user",通过grep -w精确匹配过滤.
#5,脚本一直不退出。除非,用户主动退出或者登陆成功!
}
while :
do
clear
Title
read -p "请输入你的选择:" Num
case $Num in
1)
Login
;;
2)
exit
;;
*)
echo "您的输入有误,请重新输入!"
sleep 2
;;
esac
done
转自
Python运维开发基础01-语法基础 - 陈思齐 - 博客园 https://www.cnblogs.com/chensiqiqi/p/9163023.html
Python运维开发基础01-语法基础【转】
标签:perl bin c语言 centos7 tps 初始 mrc val title
原文地址:https://www.cnblogs.com/paul8339/p/9625508.html
下一篇:Python 和C#的交互