Python基础知识(2)
1:if比较运算符、and、or
>=:大于或者等于
<=:小于或者等于
==:等于
!=:不等于 (<>:也是不等于,在Python2中可用、Python3中无法使用)
age = 19 #if age 大于等于 18:#我们用什么方法来表示大于或者等于
if age >= 18: #大于或者等于,不论大于还是小于,符号都在等号的左边
print("已成年,可以去网吧...") #if age <= 18: 小于或者等于
#if age == 18: 等于
#if age != 18: 不等于
#if age <> 18: 也是不等于(在Python2中可以用,在Python3中不能用)
#注意: >=、<=、==、!= ,中间都不能有空格
2:逻辑运算符
逻辑运算符是什么呢?
站在;逻辑的角度上思考,你们两个是都去呢,还是你们两个只有一个人可以去。
逻辑运算符:或者(or)、并且(and)、not
我们先来说下“或者”
you = input("你去吗?") #询问你去办理业务吗
she = input("他去吗?") #询问他去办理业务吗 #if you == "去" 或者 she == "去": #规定只要有一个人去,这件事情就可以办成
if you == "去" or she == "去": #or就相当于或者的意思
print("可以办理业务。")
再来说说“并且”
you = input("你去吗?") #询问你去办理业务吗
she = input("他去吗?") #询问他去办理业务吗 #if you == "去" 并且 she == "去": #规定你和他都要去,如果其中有一个人不去的话就无法办理业务
if you == "去" and she == "去": #and就相当于并且的意思,if里面的两个条件必须都成立的情况下才可以去办理业务
print("可以办理业务。")
用if和逻辑运算符来打印一个 “你是不是白富美的小程序”
color = input("你白吗:") #你白吗
money = input("你的财产总和是:") #你有钱吗
beautiful = input("你美么:") #你漂亮吗 #if 白 并且 有钱 并且 美:
#if 白 and 有钱 and 美:
if color == "白" and money > 1000000 and beautiful == "美":
print("你是白富美。")
有没有发现,这样即便你输入的是 白,1千万,美,还是没有显示“你是白富美”的值,那问题出在哪里呢?
color = input("你白吗:") #你白吗
money = int(input("你的财产总和是:")) #你有钱吗,因为输入数值会加上引号变成字符串,所以我们要用int整形来把输入的信息转换成整数,去掉引号
beautiful = input("你美么:") #你漂亮吗 #if 白 并且 有钱 并且 美:
#if 白 and 有钱 and 美:
if color == "白" and money > 1000000 and beautiful == "美":
print("你是白富美。")
我们还是需要稍微修改下我们的代码,使我们的代码变得更完整
我们三项都输入满足条件的值的时候,会打印出“你是白富美”,如果我们没有达到的话,就不提示什么,我们怎么做才能让我们输入的值不满足条件的时候给予相应的提示呢?
color = input("你白吗:") #你白吗
money = int(input("你的财产总和是:")) #你有钱吗
beautiful = input("你美么:") #你漂亮吗 #if 白 并且 有钱 并且 美:
#if 白 and 有钱 and 美:
if color == "白" and money > 1000000 and beautiful == "美":
print("你是白富美.")
else:
print("你不是白富美.") ''' if .... : 如果你....完成:
我就打印你是白富美
else: : 那如果你没有完成:
那我就打印你不是白富美
if 和 else 就类似于 : 如果...那么
如果你完成了我怎么做,如果你不完成,那么我这样做'''
如果我们用“或者 or”呢? 可以自己试试。
说完了and和or,我们再来说说逻辑运算符not
not是什么意思呢 “非”,如果X的值为True,则返回结果为False,如果X的值为False,则返回结果为True
#我们定义a变量,然后拿a来做比较,下方的代码,输出的结果为“正确”
a = 30 if a > 0 and a <= 50:
print("正确")
else:
print("错误") #那如果我们使用not来进行操作,会显示什么呢? a = 30 if not (a > 0 and a <= 50):
print("正确")
else:
print("错误") #可以看到上述的代码,我们在条件前添加not,就可以达到非的效果,黑白颠倒。
3:if-elif的使用
elif是什么呢,简单说,我们用if和else做判断,判断对错都会返回一个结果,如果我有2-3个条件去执行,我要怎么做?来看下面的例子
'''if 条件1: #定义你是网易工作吗,如果想去输出下面信息,结束程序,如果不想去继续往下走
print("xxxxx")
elif 条件2: #定义你是淘宝工作吗,如果想去输出下面信息,结束程序,如果不想去继续往下走
print("xxxxx")
elif 条件3: #你想去京东工作吗,如果想去输出下面信息,结束程序,如果不想去继续往下走
print("xxxxx")
else: #如果以上三个都不是,输出else的信息
print("xxxxx") ''' sex = input("你想去哪里工作:") if sex == "网易":
print("你获得了网易的面试邀请...")
elif sex == "淘宝":
print("你获得了淘宝的面试邀请...")
elif sex == "京东":
print("你获得了京东的面试邀请...")
else:
print("恭喜,什么也没有")
我们写一个用户输入1-7反应给用户星期几
num = int(input("请输入一个整数(1-7):")) #因为用户输入的是字符串,所以我们要整形 if num == 1:
print("星期一")
elif num == 2:
print("星期二")
elif num == 3:
print("星期三")
elif num == 4:
print("星期四")
elif num == 5:
print("星期五")
elif num == 6:
print("星期六")
elif num == 7:
print("星期日")
else:
print("错误,重新输入")
4:while循环
程序的三大执行顺序:
1):顺序执行:从下往下执行;
2):选择执行:从上往下执行,在中间可能一直往下,可能从右边走然后往下,有选择;
3):循环执行:去操场跑步的时候要一直绕着跑道跑,重复的绕圈就是循环。
先写一个简单的循环:
输入1-10的数字,每次循环的条件执行都会把结果输出,继续往下走,输入的结果再+1返回给条件继续判断,直到条件无法完成时退出循环
5:if的嵌套
嵌套:
1):if嵌套:一个if里面还有一个if,当你在做一件事情是在别的事情完成或者不完成的前提下做的事情
'''
我们所学习过的if语句大概是一下三种 ①:
if 条件成立:
print(xxxxx) ②: if 条件成立:
print(xxxxx)
else:
print(xxxxx) ③: if 条件1:
print(xxxxx)
elif 条件2:
print(xxxxx)
elif 条件3:
print(xxxxx)
...
else:
print(xxxx) if嵌套呢? if 条件:
print(xxxx)
if xxx2:
print(xxxx) 这就是if嵌套
'''
那if嵌套怎么用呢?
ticket = 1 #定义车票
knifeLenght = 8 #定义回家带的一把刀,长度为cm #先判断有没有票,能不能进站
if ticket == 1: #如果没有车票,无法进站
print("车票检查通过,可以进站进行安检..") #打印欢迎进站信息
if knifeLenght <= 10: #如果刀子的长度没有超过10厘米可以进站
print("通过安检,可以进入候车厅..") #打印进站信息
print("两分钟后进入列车,请各位排队依次进入..") #打印进站信息
else: #如果刀子长度超过10厘米讲无法进入列车
print("您无法通过安检,请检查自身行李")
else: #如果没有通过检票,请先购买
print("请先购买车票,在进行检票进站") #可以自行修改没有车票或者刀子长度超过10cm看看效果
我们在写一个关于判断白富美和高富帅的小脚本
sex = input("请输入你的性别:") #让用户输入性别 if sex == "男": #如果是男的执行以下信息
high = int(input("请输入你的身高:")) #输入身高
money = int(input("请输入你的存款:")) #输入存款
cool = input("你觉得你帅吗:") #输入..... if high >= 180 and money > 100000 and cool == "帅": #全部满足才是高富帅
print("你是高富帅") #全部满足输出高富帅
else:
print("你不是高富帅") #不满足输入不是 elif sex == "女": #如果用户输入的性别是女,执行以下信息
colour = input("你觉得你白么:") #输入...
money = int(input("请输入你的存款:")) #输入存款
cool = input("你觉得你美吗:") #输入...
if colour == "白" and money > 100000 and cool == "美": #全部满足才可以继续执行
print("你是白富美") #全部满足的输出白富美
else:
print("你不是白富美") #如果不是的话就不是
else:
print("输入错误") #如果输入的性别不是男的也不是女的,提示错误信息
6:while嵌套
while嵌套 :在while条件满足的事情里面又添加了一个while
while 条件:
条件满足的时候做的事情
条件满足的时候做的实情2
.....
while 条件2:
条件2满足的时候做的事情
.......
我们现在来试验下
下面写出你要做的事情,重复10遍
1):站起来
2):坐下
3):站起来
4):原地旋转5圈
5):坐下
用while 怎么写?
while 条件: #循环次数为10次
1.站起来 #先做第一遍,站起来
2.坐下 #先做第一遍,坐在
3.站起来 #先做第一遍,站起来
while 执行5次: #每次循环5次1圈
4.原地旋转1个
5.坐下 #坐在 #站起来-坐在-站起来-转一个圈..转五个圈... 重复10次
比如我们要打印一个矩形:
*
**
***
****
*****
我们应该如何利用while循环和while嵌套来进行操作呢?
我们先来打印一个简单的 *****
*****
*****
*****
*****
''' i = 1
while i <= 5:
print("******")
i = i + 1 #加入我想print("*") 只输出一个* 我改如何操作,可以借鉴上面的while嵌套的站起来,坐下来写 i = 1 while i <= 5:
j = 1
while j <= 5: #打印5次* ,也就是说打印出来的效果是“*****”
print("*",end="") #end="" 是不会换行的意思,空格的意思,print输出*的话默认是换行的
j = j + 1
print("") #while j循环结束后用此命令来换行,print输出空内容默认是换行,等到while j结束之后执行,
i = i + 1
#循环打印5次已经打印的5个*
我们先来说下 什么是符合运算符?
比如 : i = i + 1 相当于 i += 1
注意一点:
a = 5 #定义变量a
a *= 34-22+43-22 #要记住这个误区,
a
165 #a *= 34-22+43-22相当于a = 5 * (34-22+43+22),不是a = 5*34-22+43+22 如果遇到后面是一个式子的话切记要加小括号
7:用“*”如何打印三角形?
结果如下:
i = 1
while i <= 5:
j = 1
while j <= i:
print("*",end="")
j += 1
print("")
i += 1
我们来分析下代码
小想法:
i = 1
while i <= 5:
j = 1
num = int(input("请输入行里*的个数:"))
while j <= num:
print("*",end="")
j += 1
print("")
i += 1
我们来尝试写一个99乘法表:
i = 1
while i <= 9: #打印9行
j = 1
while j <= i:
print("X*Y=Z",end="") #表示所有的乘法,如 1*1=1
j += 1
print("")
i += 1
修改x*y=z
i = 1
2 while i <= 9:
j = 1
while j <= i:
print("%d*%d=%d "%(j,i,j*i),end="")
j += 1
print("")
i += 1
如果你运行了代码之后,如果你有强迫症,那这里就要介绍一个命令 “\t”。 \t的意思类似于空格,我们修改下以上的代码,来看看效果
i = 1
while i <= 9:
j = 1
while j <= i:
print("%d*%d=%d\t "%(j,i,j*i),end="")
j += 1
print("")
i += 1
来试验一个小游戏:
剪刀石头布的游戏,达到这样的效果?要怎么写?
#impore:导入模块的意思,导入random的模块
import random #1. 提示并获取用户的输入
player = int(input("请输入:0石头,1剪刀,2布:")) #2. 让电脑出一个
computer = random.randint(0,2) #模块后面如果你想调用什么需要在模块后加一个点.,randint(0,2)的意思是自动在0-2中选取一个数字 #3. 判断用户的输入,然后显示对应的结果
#玩家获胜的条件:
if (player == 0 and computer == 1) or (player == 1 and computer == 2) or (player == 2 and computer == 0):
print("赢了")
#玩家平局的条件:
elif player == computer:
print("平局")
else:
print("输了")
8:for循环
简单了解下,for循环
name = "laowang" #for xx in xx: #这是for循环的语法
for temp in name: #for xx(这里可以随便写,写一个新的变量名) in xx(这里写变量)
print(temp) #输出新变量,打印name变量中字符串的每个字符
8:while里面嵌套if、while之break
之前我们遇到if里面嵌套if,while里面嵌套while,但是我们没见过while里面嵌套if的,我们来做一个实验
打印100以内的所有偶数?
i = 1 while i <= 100: if i%2==0: #如果i能够整除2且没有余数的话,条件通过打印i。
print(i) i += 1
那break是什么意思呢?
break:如果条件满足提前结束循环语句
i = 1 while i <= 5:
#如果我们只想打印3以为的数字怎么办?
if i == 3:
break #break 如果条件满足提前结束while循环语句,break就是结束循环的语句
print(i)
i += 1
我们如果像打印100以内的前20个偶数,怎么打印?
i = 1
num = 0
while i <= 100:
if i%2 == 0:
print(i)
num += 1
if num == 20:
break
i += 1
说完break,我们再说说 continue。
continue:结束这一次的循环,转而执行下一次的循环。
我们来实验下
i = 1 while i <= 10:
i += 1 if i == 3:
continue
print(i)
注意:break和continue在while循环的嵌套中,break和continue在哪个while下面,就对哪个while循环执行。
Python基础知识(2)的更多相关文章
- Python开发【第二篇】:Python基础知识
Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...
- python基础知识(二)
以下内容,作为python基础知识的补充,主要涉及基础数据类型的创建及特性,以及新数据类型Bytes类型的引入介绍
- python 基础知识(一)
python 基础知识(一) 一.python发展介绍 Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本 ...
- python基础知识讲解——@classmethod和@staticmethod的作用
python基础知识讲解——@classmethod和@staticmethod的作用 在类的成员函数中,可以添加@classmethod和@staticmethod修饰符,这两者有一定的差异,简单来 ...
- python爬虫主要就是五个模块:爬虫启动入口模块,URL管理器存放已经爬虫的URL和待爬虫URL列表,html下载器,html解析器,html输出器 同时可以掌握到urllib2的使用、bs4(BeautifulSoup)页面解析器、re正则表达式、urlparse、python基础知识回顾(set集合操作)等相关内容。
本次python爬虫百步百科,里面详细分析了爬虫的步骤,对每一步代码都有详细的注释说明,可通过本案例掌握python爬虫的特点: 1.爬虫调度入口(crawler_main.py) # coding: ...
- python 爬虫与数据可视化--python基础知识
摘要:偶然机会接触到python语音,感觉语法简单.功能强大,刚好朋友分享了一个网课<python 爬虫与数据可视化>,于是在工作与闲暇时间学习起来,并做如下课程笔记整理,整体大概分为4个 ...
- python基础知识小结-运维笔记
接触python已有一段时间了,下面针对python基础知识的使用做一完整梳理:1)避免‘\n’等特殊字符的两种方式: a)利用转义字符‘\’ b)利用原始字符‘r’ print r'c:\now' ...
- Python基础知识(五)
# -*- coding: utf-8 -*-# @Time : 2018-12-25 19:31# @Author : 三斤春药# @Email : zhou_wanchun@qq.com# @Fi ...
- Python基础知识(Basic knowledge)
Python基础知识(Basic knowledge) 1.认识Python&基础环境搭建 2.Python基础(上) 3.Python基础(中) 4.Python基础(下) 5.Python ...
- Python 基础知识(一)
1.Python简介 1.1.Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时 ...
随机推荐
- freeIPMI README && issue about OpenIPMI kernel driver
http://www.gnu.org/software/freeipmi/README FreeIPMI - Copyright (C) 2003-2013 FreeIPMI Core Team Fr ...
- Android学习笔记(十)——使用意图链接活动
使用意图链接活动 1.新建一个名为"UsingIntent"的项目,右击src目录下的包名,选择New-->Class选项.并将新的类文件名称命名为"SecondA ...
- Django-权限信息中间件操作
# 在当前app下新建一个middleware的文件夹,然后就可以尽情的写中间件了,只能是这个名字,切记~@!import re from django.shortcuts import redire ...
- Arduino 网络时钟client
升级! 添加了12h/24h 的开关,还有标准/ 夏令时开关!见步骤7 & 步骤8. 你是否曾想要一个和办公室时间来源全然准确的表? 这就有一个网络的办公时间server,你能够根据它并同步你 ...
- 从.Net版本演变看String和StringBuilder性能之争
在C#中string关键字的映射实际上指向.NET基类System.String.System.String是一个功能非常强大且用途非常广泛的基类,所以我们在用C#string的时候实际就是在用.NE ...
- 基于HTML5 Canvas和jQuery 的绘图工具的实现
简单介绍 HTML5 提供了强大的Canvas元素.使用Canvas并结合Javascript 能够实现一些很强大的功能.本文就介绍一下基于HTML5 Canvas 的绘图工具的实现.废话少说,先看成 ...
- storage engine option for directoryPerDB
Requested option conflicts with current storage engine option for directoryPerDB; you requested true ...
- org.gradle.api.publication.maven.internal.DefaultMavenFactory错误
Error:Unable to load class 'org.gradle.api.publication.maven.internal.DefaultMavenFactory'. Possible ...
- 创建Material Design风格的Android应用--应用主题
本人全部文章首先公布于个人博客,欢迎关注,地址:http://blog.isming.me 昨天正式公布了android 5,同一时候android developer站点也更新了,添加了创建Mate ...
- @class && #import
先前被问到@class和#import的区别,我很直白的说使用@class是对要引用的类进行一个声明,不让编译器报错,到后面要用的时候再引入相应的类,而#import则会引入类的所有实例变量和方法.接 ...