昨天简单的学习了一些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. canvas画布,写字板

    <!doctype html><html><head> <meta charset="utf-8"> <meta http-e ...

  2. dubbox ExceptionMapper Filter request response 数据获取 数据传递

    dubbx虽然是基于jboss的resteasy实现restfull,但是对resteasy原生的配置却不支持(可能是考虑到dubbo本事的设计模式及实现难度,但是和大部分framework的设计风格 ...

  3. 聊聊Java的final关键字

    Java的final关键字在日常工作中经常会用到,比如定义常量的时候.如果是C++程序员出身的话,可能会类比C++语言中的define或者const关键字,但其实它们在语义上差距还是挺大的. 在Jav ...

  4. [转]大整数算法[11] Karatsuba乘法

    ★ 引子         前面两篇介绍了 Comba 乘法,最后提到当输入的规模很大时,所需的计算时间会急剧增长,因为 Comba 乘法的时间复杂度仍然是 O(n^2).想要打破乘法中 O(n^2) ...

  5. Next Permutation & Previous Permutation

    Next Permutation Given a list of integers, which denote a permutation. Find the next permutation in ...

  6. 并行运行多个python虚拟机

    之前遇到一个问题,需要将场景服务这个模块拆分出来,用独立的一个线程去执行.使用独立的线程好处就是,逻辑写的可以相对简单粗暴点,不必考虑到大量的场景服务逻辑卡主线程的情况. 由于我们服务器之前是使用py ...

  7. go语言项目汇总

    Horst Rutter edited this page 7 days ago · 529 revisions Indexes and search engines These sites prov ...

  8. go语言 documentation

    Documentation文档   The Go programming language is an open source project to make programmers more pro ...

  9. Python开发环境(1):Eclipse+PyDev插件

    电脑:小米笔记本电脑Pro 15.6寸(i5-8250U),操作系统:Windows 10,JDK版本:1.8.0_152(环境变量已配置) Step 1.下载Eclipse 根据我的CPU型号,选择 ...

  10. 【前端vue开发架构】vue开发单页项目架构总结

    为营销活动设计的前端架构 主要的技术栈为 Vuejs,Webpack,请自行阅读如下技术或者框架的文档: 一.基础说明: node (https://nodejs.org/en/) npm (http ...