跟着运维组学Python基础 day01

计算机基础知识

cpu

: 人类的大脑 用途: 用于计算和处理

内存: 临时存储数据 用途: 解决硬盘和cpu的速度差

硬盘: 永久存储数据

操作系统: 是一个特殊的软件,调度硬件和软件之间的数据交互

python2和python3区别

  • Py2: 源码不统一, 重复代码, 维护成本高
  • Py3: 源码统一, 没有重复代码, 维护成本低
  • 字符串类型不同 py3: str bytes,py2: unicode str,py2中的unicode对应py3中的str,py2中的str对应py3中的bytes
  • 默认解释器编码 py2: 默认使用解释器编码asciipy3 默认使用解释器编码utf-8
  • 输入 py2:raw_input("你好") py3:input("你好")
  • 输入 py2:print "你好" py3:print("你好")
  • int int long除法
  • range和xrang py2:range 在内部立即把所有的值创建xrange 不会再内部立即创建,而是循环时,边循环边创建,py3:range 不会再内部立即创建,而是循环时,边循环边创建
  • 模块和包 py2:文件中必须有_ init _.py,py3:不需要
  • 字典keys py2:列表,py3:迭代器,可以循环但不可以索引valuespy2:列表py3:迭代器,可以循环但不可以索引itemspy2:列表,py3:迭代器,可以循环但不可以索引
  • map/filter py2:返回列表,py3:返回迭代器,可以循环但不可以索

python是一个编程语言(重点)

python是强类型定义语言 动态 解释型

编译型、解释型语言的区别和特点

  • 编译型

特点: 只编译一次

优点: 运行速度快

缺点: 开发速度慢

代表语言: C、C++

  • 解释型

特点:边编译边执行

优点: 开发速度快

缺点: 运行速度慢

代表语言: Python

python的优缺点

优点:

开发效率高, 可跨平台, 可嵌入, 可扩展, 高级语言, 代码简单, 优雅, 明确

缺点:

相对C慢, 代码不能加密, 不能利用多线程

种类:

cpython 官方推荐安装 转成c的字节码

jython 转换成java的字节码

irnopython 转换成C#(.NET)字节码

pypy 转换成动态变异 开发快 运行快

print()

print(),字符串,数字,判断,前期全靠print来排bug

<code>print('hello world!')# 输出结果hello world!/<code>

变量

什么是变量?

<code>x = 1+2+3+4+5 # x=15y = x*3/2 # 15*3/2=22.5z = (y+100) / 24 # (22.5+100)/24=5.104166666666667print(x,y,z)# 输出结果1522.55.104166666666667/<code> 

这里的x,y,z就是变量,代指一些内容,简单的可以理解就是把右边的值给了左边那个字母,左边那个字母这个时候就称之为变量,这里的x、y、z就是变量。(后面还会继续学习)

作用:

  • 作为一个临时存储的中间值
  • 给一些复杂难记的起一个容易记住的名字

定义变量:

  • 变量名
  • 赋值操作 =
  • 值 = 后面的内容

变量命名规则:

  • 变量全部由数字,字母,下划线任意组合
  • 不能以数字开头
  • 不能是python的关键字以下关键字不能声明为变量['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']
  • 要具有描述性,要具有意义
  • 不能使用中文和拼音
  • 要区分大小写
  • 推荐写法:驼峰体下划线

变量的练习:

<code># 题目:看下面的变量设置是否正确?x8 = 100 # Trueb_ = 12 # True4g = 32 # True_ = 11# True*r = 12 # Falser3t4 = 10 # Truet_ = 66 # True/<code>

变量的小高级:

<code># 题目:给出以下的结果?age1 = 18age2 = age1age3 = age2age2 = 12print(age1,age2,age3)# 输出结果181218# 为什么会这样?# 1. 执行顺序,从上到下# 2. 赋值在下面的会将上面的赋值取代,变成下面新的值,指向发生了改变,而不是变量本身。/<code>

变量识记:

  • 变量只能指向数据,不能指向变量
  • 变量在内存中是唯一命名的
  • 变量代指一些复杂过长的数据

常量

常量的定义

  • 变量名全部大写,放在文件的最上面,如:ALEX_AGE = 50常量不建议修改
  • 生活中一直不变的,如π,身份证号码
  • 在python中没有真正的常量,为迎合其他语言的口味,全部大写的变量称之为常量
  • const int count = 60;一旦定义为常量,更改即会报错

注释

用途:

帮助理解,给一些不太能够理解的的写一个描述,让咱们写的程序好理解

两种表示方法:

  • 单行注释: # 只能注释一行,不能换行 注释的代码是不执行的
  • 多行注释: ''' ''' 支持换行

格式:

<code>s1 = 'hello world!'单行注释:# s2 = 'ni hao shi jie' # 我就是被#号注释掉的内容多上注释:'''床前明月光地上鞋两双举头望明月其中就有你'''/<code>

基础数据类型初识

整型 (int): 数值型

<code>print(23+37)print(25-3)print(2*6)print(6/3)# 输出结果6022122.0/<code>

字符串 (str): 汉字、字母

  • python中用引号引起来的就是字符串 如:c = """shijie""" # 是字符串
  • 字符串拼接只能相乘或相加字符串+: 字符串和数字不能进行相加字符串* : 字符串和数字相乘

布尔值 (bool):

  • True 真 1
  • False 假 0

还有其他的都是比较重要的:列表(list)如[1,a]、元组(tuple)如:(1,a,)、字典(dict)如:{'a':1,'b':2}、集合(set)如:{'apple', 'orange', 'apple'}

跟着运维组学Python基础 day01

input (用户输入)

用途:

用户输入

识记点:

python3版本中, input获取到的类型全部都是字符串类型(重点)

格式:

<code>示例一improt getpass # 调用python getpass模块username = input('请输入一个内容: ') # 提示语句passwd  = getpass.getpass('请输入密码: ')示例二# 输出结果>>> my_input = int(input('请输入一个数字: '))请输入一个数字: 6>>> num = my_input + 4>>> print(num)10>>> print(type(num))<class># 字符串与数值型无法相加# 通过int将str转换成数值型/<class>/<code>

if 如果条件判断

if 如果选择的5种条件

  • 单独if (单纯选择)

切记:tab和空格不能混着用

格式:

<code>if 条件: # 条件 一般用来做判断 > < ==print(1)/<code>

例题:

<code> print(111) if 2 < 1: # 如果该条件成立     print(666) # 就进入到这个里面执行print(666) print(222) # 如果条件不成立就执行print(222)  # 输出结果 111 222# 思考以下的结果 if 2 > 1: print(666) print(222)/<code>

练习题:

<code> print(123) if 3 > 5:   print(4) print(456) if 4 > 3:   print(7) print(8)/<code>
  • if else (二选一)

格式:

<code> if 条件:     结果 else:     结果/<code>

例题:

<code>print(1)if 3 > 2:  print(11)    print(23)    my_input = input('请输入你要选择的数字: ')    print(my_input)else:  print(45)print(3)# 输出结果:11123/<code>
  • if elif elif (多选一)

格式:

<code> if 条件:     结果 elif 条件:     结果 elif 条件:     结果/<code>

例题:

<code>num = int(input('猜点数:'))if num == 1:    print('晚上请你吃饭')elif num == 3:    print('一起溜达')elif num == 2:    print('请你大宝剑')/<code>
  • if elif elif else (多选一)

格式:

<code> if 条件:     结果 elif 条件:     结果 elif 条件:     结果 else:     结果/<code>

例题:

<code> s1 = '100' i1 = int(s1) print(i1,type(l1)) age = input('请输入年龄:') if int(age) > 18:     print('恭喜你,成年了') else:     print('小屁孩儿')/<code>

练习题:

<code>num = int(input('猜点数:'))if num == 1:    print('晚上请你吃饭')elif num == 3:    print('一起溜达')elif num == 2:    print('请你大宝剑')else:    print('太笨了....')print('组合')/<code>
  • if if if if : 多选

用途:

执行多次,只要满足就执行

可以选所有, 也可以一个都不选

格式:

<code> if 3>2:   print(1) if 4>3:   print(2) if 5>4:   print(3) if 6>5:   print(4) # 输出结果 1 2 3 4/<code>

例题:

<code>num = int(input('猜点数:'))if num == 1:    print('晚上请你吃饭')elif num == 3:    print('一起溜达')elif num == 2:    print('请你大宝剑')/<code>
  • if 嵌套

格式:

<code> if 条件:     结果     if 条件:         结果         if 条件:             结果         else:             结果      else:           结果 else:     结果/<code>

例题:

<code>sex = '女'age = 20if sex == '女':if age > 18:      print('进来一坐')else:      print('回去上学吧')else:print('滚')# 输出结果回去上学吧/<code>

练习题:

<code> username = input('请输入用户名:') password = input('请输入密码:') code = 'qwer' your_code = input('请输入验证码:') if your_code == code:     if username == 'taibai' and password == '123':       print('登录成功')     else:       print('账号或者密码错误') else:     print('验证码错误')/<code>

本节完~


分享到:


相關文章: