python语法(二)— 判断
昨天简单的学习了一些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语法(二)— 判断的更多相关文章
- Python语法二
1.raw_input 输入 2.如果想查看某个关键字的用法,可以在命令行输入pydoc raw_input. 如果是windows,那么试一下 python -m pydoc raw_input 3 ...
- python语法_if判断
age_of_princal = 56 guess_age = int(input("e guess a age:")) if guess_age == age_of_princa ...
- Python 基础语法(二)
Python 基础语法(二) --------------------------------------------接 Python 基础语法(一) ------------------------ ...
- python学习第四讲,python基础语法之判断语句,循环语句
目录 python学习第四讲,python基础语法之判断语句,选择语句,循环语句 一丶判断语句 if 1.if 语法 2. if else 语法 3. if 进阶 if elif else 二丶运算符 ...
- web前端学习python之第一章_基础语法(二)
web前端学习python之第一章_基础语法(二) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...
- [python语法]python中如何判断一个集合是另一个集合的子集?
问:python中如何判断一个集合是另一个集合的子集? 答:用issubset()方法 语法: A.issubset(B) 返回: True 如果A是B的子集. False 如果A不是B的子集. 样例 ...
- 【阿K学Python系列】一Python基础语法(二)
前言 通过上一章的学习[阿k学Python]一Python入门(一),我们已经初步了解到Python是一种解释型.面向对象.动态数据类型的高级程序设计语言,当然也是一门脚本语言,像前端需要学习的Jav ...
- Python startswith() 函数 判断字符串开头
Python startswith() 函数 判断字符串开头 函数:startswith() 作用:判断字符串是否以指定字符或子字符串开头 一.函数说明语法:string.startswith(str ...
- Python语法详解
python语法解析 目录 python语法解析 一.顺序结构 二.分支结构 2.1 if 的基本语法 2.2 if 的基本应用 三.循环结构 3.1 while 语法 3.1.1 语法结束条件 3. ...
随机推荐
- Python概念-Item系列(林海峰教的)
这个Item系列是egon老师自创的,个人还是可以接受这种文化底蕴的,所以直接拿来用,也是毫无违和感的 所谓Attr系列,其实是__setattr__,__delattr__,__getattr__ ...
- [LeetCode] #112 #113 #437 Path Sum Series
首先要说明二叉树的问题就是用递归来做,基本没有其他方法,因为这数据结构基本只能用递归遍历,不要把事情想复杂了. #112 Path Sum 原题链接:https://leetcode.com/prob ...
- plsql链接数据库配置
一. 目录结构 D:\install\PLSQL |-- instantclient_11_2 |-- tnsnames.ora |-- PLSQL ...
- ActiveMQ监听消息并进行转发,监听不同的mq服务器和不同的队列
工作中刚接触mq消息业务,其实也就是监听一下别的项目发送的消息然后进行对应的转发,但是监听的mq会有多个,而且转发的地址也可能有多个,这里就使用spring集成的方式!记录一下实现方式: 监听多个mq ...
- 彻底搞懂字符编码(unicode,mbcs,utf-8,utf-16,utf-32,big endian,little endian...)[转]
最近有一些朋友常问我一些乱码的问题,和他们交流过程中,发现这个编码的相关知识还真是杂乱不堪,不少人对一些知识理解似乎也有些偏差,网上百度, google的内容,也有不少以讹传讹,根本就是错误的(例如说 ...
- KVM,QEMU,libvirt入门学习笔记【转】
转自:http://blog.csdn.net/julykobe/article/details/27571387 注:本文内容均来自网络,我只是在此做了一些摘抄和整理的工作,来源均有注明. 0.虚拟 ...
- 数论-求n以内的质数
一.埃拉托斯特尼筛法 名字很高大上,然而并没有什么卵用…… 思路: 在把<=√n的质数所有的<=n的倍数剔除,剩下的就都是质数了,很容易理解…… 复杂度O(nloglogn) #inclu ...
- django Rest Framework----认证/访问权限控制/访问频率限制 执行流程 Authentication/Permissions/Throttling 源码分析
url: url(r'books/$',views.BookView.as_view({'get':'list','post':'create'})) 为例 当django启动的时候,会调用执行vie ...
- EPC摘抄
S6a MME – HSS 完成用户位置信息的交换和用户签约信息的管理,传送控制面信息 Diameter MME:主要负责信令处理及移动性管理,功能包括:NAS信令及其安全:跟踪区域(Tracking ...
- vue项目中遇到的一些问题
或访问:https://github.com/littleHiuman/experiences-about-vue 欢迎补充! vuex 状态 vue-cli 命令行 vue vue vue-rou ...