python学习--Day2

if 、elif、else关键字,构造分支结构

用户身份验证:

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

password = input('请输入口令: ')

# 如果希望输入口令时 终端中没有回显 可以使用getpass模块的getpass函数

# import getpass

# password = getpass.getpass('请输入口令: ')

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

    print('身份验证成功!')

else:

    print('身份验证失败!')

python中没有用花括号来构造代码块,而是使用了缩进的方式来设置代码的层次结构,如果if条件成立的情况下需要执行多条语句,只要保持多条语句具有相同的缩进就可以了。

分段函数求值:

      3x - 5  (x > 1)

f(x) =  x + 2   (-1 <= x <= 1)

      5x + 3  (x < -1)

x = float(input('x = '))

if x > 1:

     y = 3 * x - 5

elif x >= -1:

    y = x + 2

else:

    y = 5 * x + 3

print('f(%.2f) = %.2f' % (x, y))

判断输入的边长能否构成三角形

如果能则计算出三角形的周长和面积

import math

 a = float(input('a = '))

b = float(input('b = '))

c = float(input('c = '))

if a + b > c and a + c > b and b + c > a:

    print('周长: %f' % (a + b + c))

    p = (a + b + c) / 2

    area = math.sqrt(p * (p - a) * (p - b) * (p - c))

    print('面积: %f' % (area))

else:

    print('不能构成三角形')

 循环结构
for-in循环:

1·100求和

sum = 0

for x in range(101):

    sum += x

print(sum)

`range`可以用来产生一个不变的数值序列,而且这个序列通常都是用在循环中的

 `range(101)`可以产生一个0到100的整数序列。

- `range(1, 100)`可以产生一个1到99的整数序列。

- `range(1, 100, 2)`可以产生一个1到99的奇数序列,其中的2是步长,即数值序列的增量。

用for循环实现1~100之间的偶数求和

sum = 0

for x in range(2, 101, 2):

    sum += x

print(sum)

while循环:

`while`循环通过一个能够产生或转换出`bool`值的表达式来控制循环,表达式的值为`True`循环继续,表达式的值为`False`循环结束

猜数字游戏

计算机出一个1~100之间的随机数由人来猜

计算机根据人猜的数字分别给出提示大一点/小一点/猜对了

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('你的智商余额明显不足')

上面的代码中使用了`break`关键字来提前终止循环,需要注意的是`break`只能终止它所在的那个循环,还有另一个关键字是`continue`,它可以用来放弃本次循环后续的代码直接让循环进入下一轮。和分支结构一样,循环结构也是可以嵌套的,也就是说在循环中还可以构造循环结构。

原文地址:https://www.cnblogs.com/4443056bdH/p/11279009.html