昨天简单的学习了一些python的一些简单的语句与python的数据类型,今天继续学习python的基础语句 if 语句。

一、if 语句

  • if 语句语法
if expression:
ifSuite
else:
elseSuite 

  如果表达式expression的值为非0或者为True,则代码组ifSuite将会被执行,否则执行elseSuite代码组。其实这里跟java的语法差不多,但是这里expression可以直接写数据类型。

  • 数字,只要是非0,则会被认为是True。
  • 字符串 只要是非“”, 都会被认为是True。
  • 列表 只要非[], 都会被认为是True。
  • 元组 只要非(), 都会被认为是True。
  • 字典 只要非{}, 都会被认为是True。
  • None 也为假
# -*- coding: utf-8 -*-
'''
Created on 2018年12月17日 @author: Herrt灬凌夜
'''
if 0.1 :
print("真"); if 0 :
print("真");
else :
print("假"); if "" :
print("真");
else :
print("假"); if " " :
print("真");
else :
print("假"); if [] :
print("真");
else :
print("假"); if () :
print("真");
else :
print("假"); if {} :
print("真");
else :
print("假"); if None :
print("真");
else :
print("假"); if "s" in "sdas" :
print("真");

  以下为上述if语句的执行结果:

 

最后写一个简单的例子:
1.提示用户输入用户名密码
2.若用户名为"tom",密码为123456则返回Login否则返回error

# -*- coding: utf-8 -*-
'''
Created on 2018年12月17日
1.提示用户输入用户名密码
2.若用户名为"tom",密码为123456则返回Login否则返回error @author: Herrt灬凌夜
'''
userName = input("请输入用户名:");
passWord = input("请输入密码:");
if userName == "tom" and passWord == "":
print("Login");
else :
print("error");

二、if elif 语句

  • if elif 语句语法
if expression1 :
ifSuite
elif expression2 :
elifSuite
else :
elseSuite 

if elif 语句就相当于java语言中if else 语句一样,主要是用于多条件判断语句。我们以一个简单的实例来看这个语句。
1.输入一个数字,如果这个数字大于0,输出正数,如果小于0,输出负数,如果等于0则输出0

# -*- coding: utf-8 -*-
'''
Created on 2018年12月17日
输入一个数字,如果这个数字大于0,输出正数,如果小于0,输出负数,如果等于0则输出0 @author: Herrt灬凌夜
'''
numStr = int(input("请输入一个数字:"));
if numStr > 0 :
print("正数");
elif numStr < 0 :
print("负数");
else :
print("");

三、一些简单的例子

  • 根据用户输入的成绩,输出,如果大于60则输出“及格”,如果大于70则输出“良好”,如果大于80则输出“好”, 如果大于90则输出优秀,否则输出“不及格”
# -*- coding: utf-8 -*-
'''
Created on 2018年12月17日
根据用户输入的成绩,输出,如果大于60则输出“及格”,如果大于70则输出“良好”,如果大于80则输出“好”, 如果大于90则输出优秀,否则输出“不及格” @author: Herrt灬凌夜
'''
grade = int(input("请输入成绩"));
if grade < 0 or grade > 100 :
print("输入成绩有误!");
elif grade > 60 and grade <= 70 :
print("及格");
elif grade > 70 and grade <= 80 :
print("良好");
elif grade > 80 and grade <= 90 :
print("好");
elif grade > 90 :
print("优秀");
else :
print("不及格");
  • 写一个人机交互的猜拳游戏
# -*- coding: utf-8 -*-
'''
Created on 2018年12月17日
猜拳游戏 @author: Herrt灬凌夜
'''
import random; computer = random.choice(["石头", "剪刀", "布"]);
person = input("请出拳(石头,剪刀,布):");
if person == "石头" and computer == "石头" :
print("平局");
elif person == "剪刀" and computer == "剪刀" :
print("平局");
elif person == "布" and computer == "布" :
print("平局");
elif person == "石头" and computer == "剪刀" :
print("你赢了");
elif person == "剪刀" and computer == "布" :
print("你赢了");
elif person == "布" and computer == "石头" :
print("你赢了");
elif person == "石头" and computer == "剪刀" :
print("你输了");
elif person == "剪刀" and computer == "布" :
print("你输了");
elif person == "布" and computer == "石头" :
print("你输了");
 

上述代码虽然可以实现猜拳游戏,但是显得非常的啰嗦,我们对上述代码进行优化,并且可以让用户有更好的体验。

# -*- coding: utf-8 -*-
'''
Created on 2018年12月17日
猜拳游戏 @author: Herrt灬凌夜
'''
import random; computer = random.choice(["石头", "剪刀", "布"]);
winList = [["石头", "剪刀"], ["剪刀", "布"], ["布", "石头"]];
personList = ["石头", "剪刀", "布"]; hint = """
请出拳:
(0)石头
(1)剪刀
(3)布
""";
#获取下标
person = int(input(hint)); #字符串输出格式化
print("你出了%s,电脑出了%s" % (personList[person], computer));
if personList[person] == computer :
#\033[32;1m 开启颜色 \033[0m 关闭颜色
print("\033[32;1m平局\033[0m");
elif [personList[person], computer] in winList :
print("\033[31;1m你赢了\033[0m");
else :
print("\033[31;1m你输了\033[0m");
 

下面的代码明显就简洁了许多,而且可读性也强了许多。

今天主要学习了python的if 判断语句,在开发过程中判断语句还是比较常用的语句,所以要加强练习,毕竟学习一门新的语言,练习是必不可少的。

-------------------- END ---------------------


最后附上作者的微信公众号地址和博客地址


公众号:wuyouxin_gzh




Herrt灬凌夜:https://www.cnblogs.com/wuyx/

python语法(二)— 判断的更多相关文章

  1. Python语法二

    1.raw_input 输入 2.如果想查看某个关键字的用法,可以在命令行输入pydoc raw_input. 如果是windows,那么试一下 python -m pydoc raw_input 3 ...

  2. python语法_if判断

    age_of_princal = 56 guess_age = int(input("e guess a age:")) if guess_age == age_of_princa ...

  3. Python 基础语法(二)

    Python 基础语法(二) --------------------------------------------接 Python 基础语法(一) ------------------------ ...

  4. python学习第四讲,python基础语法之判断语句,循环语句

    目录 python学习第四讲,python基础语法之判断语句,选择语句,循环语句 一丶判断语句 if 1.if 语法 2. if else 语法 3. if 进阶 if elif else 二丶运算符 ...

  5. web前端学习python之第一章_基础语法(二)

    web前端学习python之第一章_基础语法(二) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...

  6. [python语法]python中如何判断一个集合是另一个集合的子集?

    问:python中如何判断一个集合是另一个集合的子集? 答:用issubset()方法 语法: A.issubset(B) 返回: True 如果A是B的子集. False 如果A不是B的子集. 样例 ...

  7. 【阿K学Python系列】一Python基础语法(二)

    前言 通过上一章的学习[阿k学Python]一Python入门(一),我们已经初步了解到Python是一种解释型.面向对象.动态数据类型的高级程序设计语言,当然也是一门脚本语言,像前端需要学习的Jav ...

  8. Python startswith() 函数 判断字符串开头

    Python startswith() 函数 判断字符串开头 函数:startswith() 作用:判断字符串是否以指定字符或子字符串开头 一.函数说明语法:string.startswith(str ...

  9. Python语法详解

    python语法解析 目录 python语法解析 一.顺序结构 二.分支结构 2.1 if 的基本语法 2.2 if 的基本应用 三.循环结构 3.1 while 语法 3.1.1 语法结束条件 3. ...

随机推荐

  1. php魔术函数 __clone()

    原文地址: http://www.nowamagic.net/librarys/posts/php/32 PHP4面向对象功能一个很大的缺点,是将对象视为另一种数据类型,这使得很多常见的OOP方法无法 ...

  2. 20155303狄惟佳预备作业三Linux学习笔记

    20155303狄惟佳预备作业三Linux学习笔记 初次接触Ubuntu系统以及Linux内核,了解了其产生的历史,从感性来讲,深深吸引我的是其中蕴含的珍贵的开源精神,以及Stallman等人对&qu ...

  3. 移动端测试===PROC系列之---/proc/pid/stat 如何准确取cpu的值【转】

         /proc/ /stat 包含了所有CPU活跃的信息,该文件中的所有值都是从系统启动开始累计到当前时刻. [root@localhost ~]# cat /proc/6873/stat 68 ...

  4. 29 A Quick Guide to Go's Assembler 快速指南汇编程序:使用go语言的汇编器简介

    A Quick Guide to Go's Assembler 快速指南汇编程序:使用go语言的汇编器简介 A Quick Guide to Go's Assembler Constants Symb ...

  5. Python的set集合详解

    Python 还包含了一个数据类型 -- set (集合).集合是一个无序不重复元素的集.基本功能包括关系测试和消除重复元素.集合对象还支持 union(联合),intersection(交),dif ...

  6. [java笔记]动态数组

    private int count;//计数器 private int ary[] = new int [3]; if(count >= ary.length){ //数组动态扩展 int ne ...

  7. elasticsearch学习笔记--原理介绍

    前言:上一篇中我们对ES有了一个比较大概的概念,知道它是什么,干什么用的,今天给大家主要讲一下他的工作原理 介绍:ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户 ...

  8. 关于django过滤器的使用

    最近项目中要做分类筛选,其实已经做了这个功能,但是有一个字段是MultiSelectField类型,包含多个值,用户提交的数据是单个值,无法查询出结果, 所以用到了自定义过滤 原代码 class In ...

  9. MySQL学习笔记:创建整年日期

    见识到另外一种创意,惊讶! 1.创建小数据表 0-9 # 创建小数据表 DROP TABLE IF EXISTS aa_numbers_small; CREATE TABLE aa_numbers_s ...

  10. CF2B The least round way 题解

    都是泪呀...↑ 题目传送门 题意(直接复制了QWQ) 题目描述 给定由非负整数组成的\(n \times n\)的正方形矩阵,你需要寻找一条路径: 以左上角为起点, 每次只能向右或向下走, 以右下角 ...