一、拾遗主题

1、变量

理解变量在计算机内存中的表示

>>> a = "ABC"

Python解释器干了两件事情:

  • 在内存中创建了一个'ABC'的字符串;

  • 在内存中创建了一个名为a的变量,并把它指向'ABC'

可以把一个变量name1赋值给另一个变量name2,这个操作实际上是把变量name2指向变量name1所指向的数据,例如下面的代码:

>>> name1 = "Jonathan"

>>> name2 = name1

>>> name1 = "Alex"

>>> print(name2)

Jonathan

代码在内存中存储示意图如下

2、格式化输出

符号 描述
%s      格式化字符串
%d      格式化整数
%f      格式化浮点数字,可指定小数点后的精度
%r      raw string,输出原生字符串

实例如下

>>> msg = "My name is %s, %d years old, and today I ran %f kms to change %r" % ("Jonathan", 28, 8.88, "\nsomething")

>>> print(msg)

My name is Jonathan, and today I ran 8.880000 kms to change '\nsomething'

>>> msg

My name is Jonathan, and today I ran 8.880000 kms to change '\\nsomething'

3、位运算

4、密文显示

输入密码时,如果想要不可见,需要利用getpass模块中getpass方法

#! /usr/bin/ env python3

# -*- coding:utf-8 -*-

import getpass

# 将输入的内容赋值给变量 pwd

pwd = getpass.getpass("请输入密码")

# 打印输入内容

print(pwd)

二、流程控制

1、条件判断

计算机之所以做很多自动化任务,因为可以做条件判断。可以通过下图来简单了解条件语句的执行过程:

比如根据不同的用户年龄,输出不同的信息

age =

if age >= :

print("adult")

elif age>=:

print("teenager")

else:

print("kid")

1) 每个条件后面要使用冒号(:),表示接下来是满足条件后要执行的语句块

2) 使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块

3) 注意if、elif、else逻辑空间划分

4) 注意整个if...else模块与其他代码联系,善用flag标志

5) if...else根据实际应用场景,可以嵌套

6) if语句执行特点,从上往下判断,某个判断上时True,把该判断对应的语句执行后,就忽略掉剩下的elif和else

7) 操作运算符包括>, >=, <, <=, ==, !=,逻辑运算符包括and, or, not

8) 只要判断语句是非零数值、非空字符串、非空list等,就判断为True,否则为False

9) 在Python中没有switch - case语句

2、循环

为了让计算机能计算成千上万次的重复运算,我们就需要循环语句。

1) 同样需要注意冒号和缩进

2) 在Python中没有do..while循环

3) Ctrl+C 可退出无限循环

Python的循环有两种,一种是for...in循环,依次把range()、string、list或tuple中的每个元素迭代出来

names = ["Jonathan", "Alex", "Rain"]

for name in names:

print(name)

执行代码,会依次打印names中的每一个元素

Jonathan

Alex

Rain

所以,for name in ...循环就是把每个元素代入变量 name,然后执行缩进块的语句

第二种循环是while循环,只要条件满足,就不断循环,条件不满足时退出循环

如计算100以内所有正整数之和

sum =

n =

while n > :

sum += n

n -=

print("100以内所有正整数之和: ", sum)

小结:

1)  for循环有固定循环次数;while循环体中需变量增减控制

2)  break跳出当前whilefor循环;continue跳出本次循环,执行下次循环

3)  pass是空语句,是为了保持程序结构的完整性,不做任何事情,一般用做占位语句

4)  Python提供一个range()函数,可以生成一个整数序列,可通过list()函数可以转换为列表

5)  不滥用breakcontinue语句,breakcontinue会造成代码执行逻辑分叉过多,容易出错

Python自动化开发 - 流程控制的更多相关文章

  1. python自动化开发学习 进程, 线程, 协程

    python自动化开发学习 进程, 线程, 协程   前言 在过去单核CPU也可以执行多任务,操作系统轮流让各个任务交替执行,任务1执行0.01秒,切换任务2,任务2执行0.01秒,在切换到任务3,这 ...

  2. python自动化开发学习 I/O多路复用

    python自动化开发学习 I/O多路复用   一. 简介 socketserver在内部是由I/O多路复用,多线程和多进程,实现了并发通信.IO多路复用的系统消耗很小. IO多路复用底层就是监听so ...

  3. Python基础之:Python中的流程控制

    目录 简介 while语句 if 语句 for语句 Break Continue pass 简介 流程控制无非就是if else之类的控制语句,今天我们来看一下Python中的流程控制会有什么不太一样 ...

  4. python中的流程控制

    目录 引言 流程控制的分类 分支结构 单if结构 if与else结构 if与elif与else结构 if分支的嵌套 循环结构 while循环 while + break循环 while + conti ...

  5. python自动化开发-1

    1.python简介 python是一门简明并且强大的面向对象的开发语言,已经在WEB开发,软件开发,科学计算,大数据分析,自动化运维等领域得到了广泛的应用. 注意:所有测试均已python3为主,与 ...

  6. python全栈 流程控制;while 循环 格式化输出 运算符 及编码

    python全栈开发 1循环 2break和continue的区别 3格式化输出 4运算符 5编码 一.流程控制while循环 while条件: 代码块(循环体) 1.死循环; while True; ...

  7. Python学习(七) 流程控制if语句

    在Python中流程控制if语句采用如下格式: if expression : statement elif expression : statement elif expression : stat ...

  8. python自动化开发-[第十四天]-javascript(续)

    今日概要: 1.数据类型 2.函数function 3.BOM 4.DOM 1.运算符 算术运算符: + - * / % ++ -- 比较运算符: > >= < <= != = ...

  9. python基础之流程控制、数字和字符串处理

    流程控制 条件判断 if单分支:当一个“条件”成立时执行相应的操作. 语法结构: if 条件: command 流程图: 示例:如果3大于2,那么输出字符串"very good" ...

随机推荐

  1. refused to Connection

    两种情况: .数据库账号密码错误 .mysql挂了

  2. Eloquent Attach/Detach/Sync Fires Any Event

    eloquent-attach-detach-sync-fires-any-event I have a laravel project, and I need to make some calcul ...

  3. 类名.class 与 类名.this 详解

    类名.class 与 类名.this 详解 今天在看 PropertyPlaceholderConfigurer 源码时,突然看到一个 PropertyPlaceholderConfigurer.th ...

  4. mysql8.0.4以后修改密码方式变更

    https://blog.csdn.net/qq_38265784/article/details/80915098 use mysql: ALTER USER 'root'@'localhost' ...

  5. IOS初级:UIScrollView & UIPageControl

    UIScrollView其实构建的就像一列很长的火车,每滑动一个屏幕,展示一节车厢. //主屏幕高度 #define kScreenHeight [UIScreen mainScreen].bound ...

  6. DB2 sql报错后查证原因与解决问题的方法

    1.对于执行中的报错,可以在db2命令行下运行命令 : db2=>? SQLxxx 查看对应的报错原因及解决方法. 2.错误SQL0206N SQLSTATE=42703  检测到一个未定义的列 ...

  7. IPutils

    package com.mmall.util; import lombok.extern.slf4j.Slf4j;import org.apache.commons.lang3.StringUtils ...

  8. 利用HBuilder开发基于MUI的H5+ app中使用百度地图定位功能

    定位功能有两种方法: 首先要初始化内置地图: var map = new plus.maps.Map("map"); 这里黄色的map是html里面的id: <div id= ...

  9. 2017多校1 hdu-Balala Power!

    其实这道题的思路挺简单的,就是找在第一位置没有出现过并且权值小的那个字母为0. 把a~z按照权值排序,其实难就难在这里,权值很大我们怎么给他排序. 其实可以开个数组来存他们每位数是多少,然后给他们比个 ...

  10. lower_case_table_names

    http://blog.csdn.net/jesseyoung/article/details/40617031 1 简介    在MySQL中,数据库对应数据目录中的目录.数据库中的每个表至少对应数 ...