八 条件判断

在Python程序中,用if语句实现:

age = 20
if age >= 18:
    print(‘your age is‘, age)
    print(‘adult‘)

也可以给if添加一个else语句,意思是,如果if判断是False,不要执行if的内容,去把else执行了:

age = 3
if age >= 18:
    print(‘your age is‘, age)
    print(‘adult‘)
else:
    print(‘your age is‘, age)
    print(‘teenager‘)

不要少写了冒号:

当然上面的判断是很粗略的,完全可以用elif做更细致的判断:

age = 3
if age >= 18:
    print(‘adult‘)
elif age >= 6:
    print(‘teenager‘)
else:
    print(‘kid‘)

elifelse if的缩写,完全可以有多个elif,所以if语句的完整形式就是:

if <条件判断1>:
    <执行1>
elif <条件判断2>:
    <执行2>
elif <条件判断3>:
    <执行3>
else:
    <执行4>

if语句执行有个特点,它是从上往下判断,如果在某个判断上是True,把该判断对应的语句执行后,就忽略掉剩下的elifelse,所以,请测试并解释为什么下面的程序打印的是teenager

age = 20
if age >= 6:
    print(‘teenager‘)
elif age >= 18:
    print(‘adult‘)
else:
    print(‘kid‘)

再议 input

最后看一个有问题的条件判断。很多同学会用input()读取用户的输入,这样可以自己输入,程序运行得更有意思:

birth = input(‘birth: ‘)
if birth < 2000:
    print(‘00前‘)
else:
    print(‘00后‘)

输入1982,结果报错:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unorderable types: str() > int()

这是因为input()返回的数据类型是strstr不能直接和整数比较,必须先把str转换成整数。Python提供了int()函数来完成这件事情:

s = input(‘birth: ‘)
birth = int(s)
if birth < 2000:
    print(‘00前‘)
else:
    print(‘00后‘)

再次运行,就可以得到正确地结果。但是,如果输入abc呢?又会得到一个错误信息:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: ‘abc‘

原来int()函数发现一个字符串并不是合法的数字时就会报错,程序就退出了。

时间: 2024-10-29 19:10:27

八 条件判断的相关文章

BASH编程基础之变量、条件判断

一.前言 在linux中,通常我们所指的脚本编程,指的是bash的脚本编程. bash作为一种过程式的编程语言来说,它应该具备编程语言所应该具备的基本元素,即:变量,流程,函数,数组.今天我们介绍变量以及流程之一的条件判断. 二.变量 1.初识变量 在编程语言中,编程语言有两大种,强类型语言和弱类型语言. 强类型语言中,要求变量的使用要严格符合定义,所有变量都必须先定义后使用.java..NET.C++等都是强制类型定义的. 与其相对应的是弱类型语言:数据类型可以被忽略的语言.它与强类型定义语言

Shell编程之条件判断与流程控制

一.条件判断式语句 1-1.概述 用来判断是与否,客观的而非主观判断,用于进行基本的管理 1-2.按文件类型判断 补充: && 命令1&&命令2 逻辑与(没有数据传递) 当命令1正确执行,则命令2才会执行 当命令1执行不正确,则命令2不会执行 || 命令1||命令2 逻辑或(没有数据传递) 当命令1执行不正确时,命令2才会执行 当命令1正确执行时,命令2不会执行 按文件类型判断 记住蓝色部分 两种判断格式: test –e /root/install.log [-e /ro

第十三章、学习 Shell Scripts 条件判断式

利用 if .... then 单层.简单条件判断式 if [ 条件判断式 ]; then 当条件判断式成立时,可以进行的命令工作内容: fi <==将 if 反过来写,就成为 fi !结束 if 之意! && 代表 AND : || 代表 or : [ "$yn" == "Y" -o "$yn" == "y" ]上式可替换为 [ "$yn" == "Y" ] ||

if 脚本条件判断式

1.单一的条件判断式: 语法: if [ 条件判断式 ]; then 当条件判断式成立时,可以进行的指令工作内容: fi //将if反过来写,就是结束if之意! && 代表 AND  || 代表 or forexample: #!/bin/bash set -x //进行查错功能 #program; # This program shows the user's choice #History: #2017/06/21 likui First release PATH=/bin:/sbin

PHP和JS在循环、条件判断中的不同之处

一.条件判断: php中算  false 的情况 1. boolean:false 2. 整形:0 3.浮点型:0 4.字符串:"" "0"(其他都对) 5.空数组 6.空对象为真(只在php4算false,其他版本都算true) 7.null和尚未定义的变量 8.所有资源都算对,除php4,所有对象也算对 JS中if()中的表达式 1. Boolean: true 真 false 假 2. String:非空字符串为真 空字符串为假 3. Null/NaN/Und

python-FIrst1--变量赋值-注释-用户交互-条件判断与缩进

变量与赋值 name='mike'          #这里一定要注意,如果右边的值不是数字,就一定要加引号,否则系统会认为右边也是一个变量,而右边我们希望是一个值,所以这时候我们就需要给右边加上单引号或者双引号,以表示右边是一个字符串. age=39 把右边的值赋予左边,就是赋值,左边的name和age就叫做变量. 注释 可以用#符号来表示,也可以用一对三个连续的单引号和双引号来表示多行注释,当要注释的内容不多的时候用#比较方便,当要注释很多行内容尤其是超过三行的时候最好用,一对 三个单引号或

MYSQL数据类型和where条件判断

MySQL中常见的数据类型 一.字符型 ① CHAR(N):固定N个字符长度的字符串,如果长度不够自动空格补齐; N的范围 0~255 ② VARCHAR(N): 存储可变长度的字符串,最常用 ③ TEXT: 存储可变长度的字符串,(常用于发布文章等大段内容) ④ TINYTEXT:0~2^8-1 *10 ⑤ MEDIUMTEXT: 0~2^24-1 *10^3; ⑥ LONGTEXT: 0~2^32-1 * 10^4;二.整形: ① TINYINT: 无符号0~2^8-1 有符号 -2^7 ~

shell条件判断

条件判断式 只要讲到程序的话,那么条件判断式,亦即是if then这种判别式肯定一定要学习的,另外一种是case...esac if....then 这个是if...then 是最常见的条件判断式了,它分为单分支条件判断式,双分支条件判断式,多分支条件判断式 单分支条件判断语句: if [ 条件判断式 ] then 输出内容 fi 双分支条件判断式: if [ 条件判断式 ] then 输出内容 else 输出内容 fi 多分支条件判断式 if [ 条件判断式 ] then 输出内容 elif

if条件判断

比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现: #!/usr/bin/env python #-*- coding:utf-8 -*- age = 3 if age >= 18:     print('your age is', age)     print('adult') else:     print('your age is', age)     print('teenager') 多条件判断 if <条件判断1>:     <执行1&g