Python条件判断if、for、while if

枫铃3年前 (2021-09-30)Python238

if条件判断

if 条件判断:

    逻辑操作......
    ......

判断字符串是否为空

if a.strip():  #表示字符串不为空
    pass

判断是否为字典

d = dict(a=1)
if isinstance(d,dict):
    print("{0} is a dict".format(d))

例子:

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
age = input("Please input your age: ")
if age.strip():
    if age.strip().isdigit():    # str.isdigit() 检查字符串是否只由数字组成
        if int(age) >= 18:
            print("你是一个成年人!")
        else:
            print("你还是一个小屁孩!")
    else:
        print("你输入的不是数字!")
else:
    print("你输入的年龄不符合要求")
if 条件判断:
    逻辑操作......
    ......
elif 条件判断:
    逻辑操作......
    ......
else:
    逻辑操作......

例子:

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
number = input("Please input a number: ")
if int(number) > 0:
    print("{0} 是正数".format(number))
elif int(number) < 0:
    print("{0} 是负数".format(number))
else:
    print("输入的数字是{0}".format(number))

while循环

while 条件判断:
    逻辑操作......
    ......

例子:

a = 100
while a >= 1:
    print(a)
    a -= 1 

while中使用break和continue

while 1: 这个比while True效率高,因为1更接近与机器编码格式
break 满足某个条件时,立即结束当前循环
continue 跳过当前循环的剩余语句,继续进行下一轮循环

例子:

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
while 1:
    age = input("Please input your age: ")
    if age.strip():
        if age.strip().isdigit():
            if int(age) >= 18:
                print("你是一个成年人!")
                break    # 遇到break就会终止,break之后的语句就都不会执行了
            else:
                print("你还是一个小屁孩!")
                break
        else:
            print("你输入的不是数字!")
    else:
        print("你输入的年龄不符合要求,请重新输入")
        continue   # 遇到continue会跳出本次循环,进入下一次循环

九九乘法表

分析:

  1x1=1
  1x2=2 2x2=4
  1x3=3 2x3=6 3x3=9

a x b = a*b
a最小是1,最大为行号
b等于行号

代码如下:

for b in range(1, 10):
    for a in range(1, b+1):
        print("{0}x{1}={2}".format(a,b,a*b),end="  ")  # python3中的空格  end=""
        if a == b:
            print()  # 相当于换行

还有一种一行写法:

print('\n'.join(' '.join("{0}x{1}={2}".format(x, y, x*y) for x in xrange(1, y+1) )for y in xrange(1, 10)))

练习1:

输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符个数。

'''
str.isdigit()  检查字符串是否只由数字组成
str.isalpha()  检查字符串是否只由字母组成
str.isspace()  检查字符串是否只由空格组成
'''
something = input("请随便输入一些内容: ")
while len(something) > 0:
    digit, letters, space, other = 0, 0, 0, 0
    for i in something:
        if i.isdigit():
            digit += 1
        elif i.isalpha():
            letters += 1
        elif i.isspace():
            space += 1
        else:
            other += 1
    print("数字有:{0}个\n英文字母有:{1}个\n空格有:{2}个\n其他字符有:{3}个".format(digit,letters,space,other))
    break

练习2:
输入一个数,求它的阶乘。

num = int(input("请输入一个数字: "))
factorial = 1
if num < 0:
    print("负数没有阶乘")
elif num == 0:
    print("0 的阶乘为 1")
else:
    for i in range(1, num + 1):
        factorial = factorial * i
    print("{0} 的阶乘为:{1}".format(num, factorial))

相关文章

利用python同步windows和linux文件

写python脚本的初衷,每次在windows编辑完文件后,想同步到linux上去,只能够登录服务器,...

爬虫基本原理

爬虫基本原理 一、爬虫是什么? 百度百科和维基百科对网络爬虫的定义:简单来说爬虫就是抓取目标网站内容的工具,一般是根据定义的行...

Django 函数和方法的区别

函数和方法的区别 1、函数要手动传self,方法不用传 2、如果是一个函数,用类名去调用,如果是一个方法...

Django 知识补漏单例模式

单例模式:(说白了就是)创建一个类的实例。在 Python 中,我们可以用多种方法来实现单例模式&#x...

Django基础知识MTV

Django简介 Django是使用Python编写的一个开源Web框架。可以用它来快速搭建一个高性能的网站。 Django也是一个MVC框架。但是在Dj...

Python mysql 索引原理与慢查询优化

一 介绍 为何要有索引? 一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。