python允许无止境的循环码_python基础-----------条件语句,循环语句

一、Python语句判断

Python条件语句是通过一条或多条语句执行结果(True或False)来决定执行的代码块,执行逻辑和shell一样,只是格式有些区别

可以通过下图简单了解语句的执行过程

Python程序语言指定任何非0和非空(null)值为true,0或者null为false.

if 判断条件:

执行语句……

else:

执行语句……

二、if条件判断

用法:类似shell,也有if嵌套

if 判断条件1:

执行语句1……

elif 判断条件2:

执行语句2……

elif 判断条件3:

执行语句3……

else:

执行语句4……

示例:

- Example4,狗的年龄计算判断

age = int(input("请输入你家狗狗的年龄:"))

print("")

if age <= 0:

print("狗狗还没出生")

elif age == 1:

print("相当于14岁的人")

elif age == 2:

print("相当于22岁的人")

elif age > 2:

human = 22 + (age -2)*5

print("对应人类年龄:",human)

### 退出提示

input("点击enter键退出"

- Example 登录案例

#!/usr/bin/env python3

# -*- coding:utf-8 -*-

import getpass

username = input('请输入用户名: ')

password = input('请输入密码: ')

#假如不显示密码

#password = getpass.getpass('请输入密码: ')

if username == 'admin' and password == 'admin':

print('登录成功!')

else:

print('登录失败!')

- Example 猜数字

#!/usr/bin/env python3

# -*- coding:utf-8 -*-

import random

answer = random.randint(1, 100)

counter = 0

while True:

counter += 1

number = int(input('请输入一个数字: '))

if number < answer:

print('小了')

elif number > answer:

print('大了')

else:

print('恭喜你猜对了!')

break

print('你总共猜了%d次' % counter)

if counter > 7:

print('建议你回去再念一遍小学吧~')

- Example 计算月收入实际到手收入

#!/usr/bin/env python3

# -*- coding:utf-8 -*-

"""

输入月收入和五险一金计算个人所得税

"""

salary = float(input('本月收入: '))

insurance = float(input('五险一金: '))

diff = salary - insurance - 3500

if diff <= 0:

rate = 0

deduction = 0

elif diff < 1500:

rate = 0.03

deduction = 0

elif diff < 4500:

rate = 0.1

deduction = 105

elif diff < 9000:

rate = 0.2

deduction = 555

elif diff < 35000:

rate = 0.25

deduction = 1005

elif diff < 55000:

rate = 0.3

deduction = 2755

elif diff < 80000:

rate = 0.35

deduction = 5505

else:

rate = 0.45

deduction = 13505

tax = abs(diff * rate - deduction)

print('个人所得税: ¥%s元' % tax)

print('实际到手收入: ¥%.2f元' % (salary - insurance - tax))

2.1 if多条件判断

当if有多个条件时可使用括号来区分判断的先后顺序,括号中的判断优先执行,此外 and 和 or 的优先级低于>(大于)、

num = 9

if num >= 0 and num <= 10: # 判断值是否在0~10之间

print ('hello')

# 输出结果: hello

num = 10

if num < 0 or num > 10: # 判断值是否在小于0或大于10

print ('hello')

else:

print ('undefine')

# 输出结果: undefine

num = 8

# 判断值是否在0~5或者10~15之间

if (num >= 0 and num <= 5) or (num >= 10 and num <= 15):

print ('hello')

else:

print ('undefine')

# 输出结果: undefine

三、while循环

While 语句时还有另外两个重要的命令continue,breadk来跳过循环,continue用于跳过该次循环,break则用于退出循环,此外“判断条件”还可以是个常值,表示循环必定成立,具体用法如下:

while循环用法:

while 条件:

代码块(循环体)

执行流程:

1. 判断条件是否为真. 如果真. 执行代码块

2. 再次判断条件是否为真......

3. 当条件为假.执行else 跳出循环. 循环结束

示例:Example1

count = 0

while (count < 9):

print(count,"The count is:"),count

count = count + 1

print('Good bye!')

0 The count is:

1 The count is:

2 The count is:

3 The count is:

4 The count is:

5 The count is:

6 The count is:

7 The count is:

8 The count is:

Good bye!

3.1 其他场景示例

While 语句时还有另外两个重要的命令continue,breadk来跳过循环,continue用于跳过该次循环,break则用于退出循环,此外“判断条件”还可以是个常值,表示循环必定成立

具体用法如下:

count = 0

while (count < 9):

count = count + 1

if count%2 > 0: # 非双数时跳过输出

continue

print(count)

print('Good bye!')

count = 0

while (count < 9):

count = count + 1

if count > 4:# 当count大于4跳出循环.

break

print(count)

print('Good bye!')

无限循环

var = 1

while var == 1:

num = input('Enter a number ')

print("You enterd:",num)

print("Good bye!")

You enterd:

Enter a number

You enterd:

Enter a number

You enterd:

Enter a number

You enterd:

Enter a number

You enterd:

Enter a number

循环使用else语句

count = 0

while count < 5:

print (count, " is less than 5")

count = count + 1

else:

print (count, " is not less than 5")

0 is less than 5

1 is less than 5

2 is less than 5

3 is less than 5

4 is less than 5

5 is not less than 5

简单语句组

flag = 1

while (flag): print ('Given flag is really true!')

print("Good bye!")

四、for循环

Python for循环可以便利任何序列的项目,如一个列表或者一个字符串

for循环用法:

示例:

for letter in 'python':

print('当前字母:',letter)

fruits = ['banana','apple','mango']

for fruits in fruits:

print ('当前水果:',fruits)

print("Good bye!")

# 当前实例运行结果为:

当前字母: p

当前字母: y

当前字母: t

当前字母: h

当前字母: o

当前字母: n

当前水果: banana

当前水果: apple

当前水果: mango

Good bye!

4.1 通过序列索引迭代

以下实例我们使用了内置函数len()和range()函数len()返回列表的长度,即元素的个数,range返回一个序列的数

示例:

fruits = ['banana','apple','mango']

for index in range(len(fruits)):

print ('当前水果:',fruits[index])

print("Good bye!")

当前水果: banana

当前水果: apple

当前水果: mango

Good bye!

五.PASS语句

Python pass是空语句,是为了保持程序结构的完整性

Pass不做任何事情,一般用作占位语句

最小的类

Python语言pass语句语法格式如下

pass

# Example

for letter in 'python':

if letter == 'h':

pass

print ('这是pass块')

print("当前字母:",letter)

print("Good bye!")

# 上面实例运行结果为:

当前字母: p

当前字母: y

当前字母: t

这是pass块

当前字母: h

当前字母: o

当前字母: n

Good bye!

Exapmle最小的类

class MyEmptyClass:

pass

Example1 打印一个质数

for num in range(10,20):

for i in range(2,num):

if num%i == 0:

j=num/i

print("%d 等于%d * %d" % (num,i,j))

break

else:

print(num)

10 等于2 * 5

11

12 等于2 * 6

13

14 等于2 * 7

15 等于3 * 5

16 等于2 * 8

17

18 等于2 * 9

19

Example2 计算1000以内被7整除的前20个数

count = 0

for i in range(0,1000,7):

print(i)

count += 1

if count >= 20:

break

Example3 给定一个不超过5位的正整数,判断其有几位,依次打印个数,十位数,百位数,千位数.万位数

打印等腰三角形

rows = 10

for i in range(0, rows):

for k in range(0, rows - i):

print ("*",end="") #注意这里的",",一定不能省略,可以起到不换行的作用

k += 1

i += 1

print ()

打印空心菱形

rows = 10

for i in range(rows):

for j in range(rows - i):

print(" ", end=" ")

j += 1

for k in range(2 * i - 1):

if k == 0 or k == 2 * i - 2:

print("*", end=" ")

else:

print(" ", end=" ")

k += 1

print ("\n")

i += 1

# 菱形的下半部分

for i in range(rows):

for j in range(i):

# (1,rows-i)

print(" ", end=" ")

j += 1

for k in range(2 * (rows - i) - 1):

if k == 0 or k == 2 * (rows - i) - 2:

print("*", end=" ")

else:

print(" ", end=" ")

k += 1

print("\n")

i += 1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值