Python实例练习

1、利用循环打印三角形 / 菱形

打印左三角形

*
**
***
****
*****

print("#" * 60)
goal = int(input("输入行数打印:"))

length = 1
while length <= goal:
    index = 0
    while index  < length:
        print("*",end="")
        index += 1
    print("")
    length += 1

打印有三角形

        *
       **
      ***
     ****
    *****
   ******


print("\n" + "#" * 60)

for length in range(goal + 1):
    print(" " * int(goal - length) + "*" * length)
    length += 1

打印等腰三角形

        *
       ***
      *****
     *******
    *********

print("\n" + "#" * 60)

for length in range(goal + 1):
    print(" " * int(goal - length) + "*" * length + "*" * int(length - 1))
    length += 1

打印倒等腰三角形

    *********
     *******
      *****
       ***
        *

print("\n" + "#" * 60)

for length in range(goal):
    print(" " * length + "*" * int(goal - length) + "*" * int(goal  - length - 1))
    length += 1

 打印菱形

  *
 ***
*****
 ***
  *
 

print("\n" + "#" * 60)

for length in range(goal):
    if length < int(goal / 2):
        print(" " * int(goal / 2 - length) + "*" * int(length + 1) + "*" * length)
    else:
        print(" " * ((length  - int(goal / 2) + 1) if goal % 2 == 0 else (length  - int(goal / 2))) + "*" * int(goal - length) + "*" * int(goal - length - 1))
    length += 1

打印空心菱形 

  *
 * *
*   *
 * *
  *

print("\n" + "#" * 60)

for length in range(goal):
     if length == 0 or length == goal - 1:
         print(" " * ((abs(length  - int(goal / 2)) if length == 0 else abs(length  - int(goal / 2) + 1)) if goal % 2 == 0 else (abs(int(goal / 2) - length))) + "*")
     elif length < int(goal / 2):
         print(" " * int(goal / 2 - length) + "*" + " " * int(2 * length - 1) + "*")
     else:
         print(" " * int(length - goal / 2 + 1) + "*" + " " * int(2 * (goal - length - 1) - 1) + "*")
     length += 1

2、判断一个数是否为2的指数

num = int(input("判断一个数是否为2的指数\n请输入一个数:"))
if num & num - 1 == 0 and num != 0:
    print(f"数字{num}为2的指数")
else:
    print(f"该数不是2的指数")

3、判断数字奇偶(两种方法)

num = int(input("判断数是偶数还是奇数\n输入一个整数:"))

print("#" * 30 + "方法一:求余法" + "#" * 30)

if num % 2 == 0:
    print(f"\n数字{num}为偶数\n")
else:
    print("\n数字%d为奇数\n"%num)

print("#" * 30 + "方法二:位运算" + "#" * 30)

if num & 1 == 0:
    print(f"\n数字{num}为偶数\n")
else:
    print("\n数字%d为奇数\n" % num)

4、判断质数


num = int(input("输入一个数:"))
for i in range(1,num):
    if num % i == 0:
        print(i)

5、石头剪刀布小游戏

import random

while 1:
    user = input("a.Rock;b.Paper;c.Scissors;x.exit :\n")
    cpu = random.choice(["a","b","c"])
    if (user == 'a' and cpu == 'c') or (user == 'b' and cpu == 'a') or (user == 'c' and cpu == 'b'):
        print("===you win!!===")
    elif cpu == user:
        print("===draw===")
    elif user == 'x':
        break
    else:
        print("===you lose===")

6、猜数字小游戏

import random
cpu = random.randint(0,100)


while 1:
    user = int(input("Guess the number: "))
    if user == cpu:
        print("===bravo!!!===")
        break
    elif user > cpu:
        print("===high===")
    else:
        print("===low===")

7、求出四位数中ABCD*A=DCBA的数

for i in range(1000,9999):
    if i * (i % 10000 // 1000) == i % 10 * 1000 + i % 100 // 10 * 100 + i % 1000 // 100 * 10 + i % 10000 // 1000:
        print(i)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值