while 循环,运算符,字符串的格式化练习

1.判断下列逻辑语句的结果,一定要自己先分析
1)1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6

Ture

print(1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6)

2)not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6

False

print(not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6)

2.求出下列逻辑语句的值,一定要自己分析
1)8 or 3 and 4 or 2 and 0 or 9 and 7

​ 8

print(8 or 3 and 4 or 2 and 0 or 9 and 7)

2)0 or 2 and 3 and 4 or 6 and 0 or 3

4

print(0 or 2 and 3 and 4 or 6 and 0 or 3)

3)1 and 0 or 8 and 9 and 5 or 2

5

print(1 and 0 or 8 and 9 and 5 or 2)

4)4 or 8 and not False and 8 or 9

4

print(4 or 8 and not False and 8 or 9)

3.下列结果是什么? (2>1这种是一体)

  1. 6 or 2 > 1

    6

  2. 3 or 2 > 1

    3

  3. 0 or 5 < 4

    False

  4. 5 < 4 or 3

    3

  5. 2 > 1 or 6

    True

  6. 3 and 2 > 1

    True

  7. 0 and 3 > 1

    0

  8. 2 > 1 and 3

    3

  9. 3 > 1 and 0

    0

  10. 3 > 1 and 2 or 2 < 3 and 3 and 4 or 3 > 2

    2

4.简述ASCII、Unicode、utf-8编码

ASCII : (老美)不支持中文
Unicode: ( 万国码)英文16 位 中文 32位
utf-8 : (可变长的编码) 英文8位 欧洲文 16位 亚洲24位

5.简述位和字节的关系?

1字节 = 8位
1Bytes = 8bit

6.while循环语句基本结构?

While 空格 条件 冒号

缩进 循环体

while 空格 条件 冒号

缩进 循环体

else 冒号

缩进 结果

7.利用while语句写出猜大小的游戏:
设定一个理想数字比如:66,让用户输入数字,如果比66大,则显示猜测的结果大了;如果比66小,则显示猜测的结果小了;只有等于66,显示猜测结果正确,然后退出循环。

num = 66
count = 0
while count < 3:
    name = int(input("请输入数字:"))
    if name > num:
       print("大了")
    elif name < num:
        print("小了")
    else:
        print("正确")
        break
    count = count + 1
else:
        print("你太笨了")
        
这是第八题的答案
第七题答案如下

num = 66
while True:
    name = int(input("请输入数字:"))
    if num > name:
        print("小了")
    elif num < name:
        print("大了")
    else:
        print("正确")
        break

8.在7题的基础上进行升级:
给用户三次猜测机会,如果三次之内猜测对了,则显示猜测正确,退出循环,如果三次之内没有猜测正确,则自动退出循环,并显示‘太笨了你....’。

num=66
n=3
while n:
    num1=int(input("请输入猜测数字"))
    n-=1
    if num1==num:
        print("猜测正确!")
        break
    elif num1>num:
        print("猜大了")
    else:
        print("猜小了")
else:
    print("你太笨了",end="")

9.使用while循环输出 1 2 3 4 5 6 8 9 10

num = 1
while num <= 10:
    print(num)
    num = num + 1  ❌
    
num = 1
while 1 <= num <= 6:
        print(num)
        num = num + 1
        continue
num = 8
while 8 <= num <= 10:
      print(num)
      num = num + 1

10.求1-100的所有数的和

i = 0
num = 0
while i <= 99:
    i = i + 1
    num = num + i
    print(num)
#5050

11.输出 1-100 内的所有奇数

num = 1
while num < 100:
    print(num)
    num = num + 2
n=1
while n<100:
    if n % 2 == 1:
        print(n)
    n=n+1

12.输出 1-100 内的所有偶数

num = 0
while num <= 100:
    print(num)
    num = num + 2

13.求1-2+3-4+5 ... 99的所有数的和

num = 0
n = 1
while n < 100:
    if n % 2 == 0:
       num = num - n
    else:
        num = num + n
    n = n + 1
print(num)

#50

num = 1
j_sum = 0
o_sum = 0
while num < 100:
    if num % 2 == 1:
        j_sum = j_sum + num
    elif num % 2 == 0:
        o_sum += num
    num = num + 1
print(j_sum - o_sum)




num = 1
num_sum = 0
while num < 100:
    if num % 2 == 1:
        num_sum += num
    elif num % 2 == 0:
        num_sum -= num
    num = num + 1
print(num_sum)





14.⽤户登陆(三次输错机会)且每次输错误时显示剩余错误次数(提示:使⽤字符串格式化)

  1. name="alex"
    psd="admin123"
    
    n=3
    while n:
        n=n-1
        num1=input("请输入账号:")
        psd1=input("请输入密码:")
        if num1==name and psd==psd1:
               print("成功登陆!")
               break
        else:
            print("账号或密码错误,你还剩下%d次机会"%(n))
            
            
            
            
    自己使用的方法:      
    n = 3
    while n:
        name = input("请输入账户")
        n -= 1
        if name == "alex":
            print("输入正确")
            break
        else:
            name1 = "你还有%d次机会"
            print(name1%(n))
           
    
posted @ 2019-07-10 16:37  挂机兄  阅读(258)  评论(0编辑  收藏  举报