练习题  判断奇数偶数
# 1. 编写Python程序,实现判断变量x是奇数还是偶数的功能。
# 2. 改写第1题,变量x需要从Python控制台输入。

# 第1题
# coding:utf-8
x = 5
a = x%2
#print(a)

if a == 0:
    print("x的值为偶数")
else:
    print("x为奇数")

print("---------------------------")
'''
while True:                               # 这里面 是 运行来一个while 循环  当执行end 的时候就退出循环 
    x = input("请输入一个数:")
    if x == "end":
        break
    num = int(x)
    if num % 2 == 0:
        print(x + "是偶然")
    else:
        print(x + "是奇数")
'''
print("---------------------------")
y = input("请输入一个数:")                 # 这是我自己写的循环    执行一遍就 退出了
nums = int(y)
if nums % 2 == 0:
        print(y + "是偶然")
else:
        print(y + "是奇数")
    
# 方法2  这个也是可以的
x = input("请输入一个数:")
a = int(x)
b = a%2
if b == 0:
    print("x的值为偶数")
else:
    print("x为奇数")

————————————————————————————————————————————————————————————————
练习题讲解2:动态输出菱形
# 3. 编写Python程序,使用while循环打印一个菱形,
# 菱形要用星号(*)打印,菱形的行数需要从控制台输入,
# 行数必须是奇数

#  * 数字 * 字符串   4 * 'a' = aaaa

line = input('请输入行数(必须是奇数):')
line = int(line)

if line % 2 != 0:
    maxSpaceNum = line // 2    # 每行的最大空格数
    i = 1
    lineSpaceNum = maxSpaceNum  # 当前行的空格数
    # 输出上三角
    while lineSpaceNum >= 0:
        # 输出每行星号左侧的空格
        print(" " * lineSpaceNum, end="")
        # 输出每行的星号
        print("*" * (2 * i - 1))
        lineSpaceNum -= 1
        i +=1
    i -= 2
    lineSpaceNum += 2
    # 生成下三角
    while lineSpaceNum <= maxSpaceNum:
        print(" " * lineSpaceNum,end="")
        print("*" * (2 * i - 1))
        lineSpaceNum += 1
        i -= 1
else:
    print("行数必须是偶数")


输出的结果为:
请输入行数(必须是奇数):5
  *
 ***
*****
 ***
  *

-----------------------------------------------
# 4. 利用Python语言中的eval函数编写一个控制台版的计算器.

while True:
    expression = input("calc:")   # calc 表示计算器 
    if expression == "exit":
        break;
    print(expression,"=", eval(expression))

输出结果为:  可以是整数 也可以是字符串 相加     注意字符串相加需要  带引号
calc:1 + 2
1 + 2 = 3
calc:"aaa" + "ccc"
"aaa" + "ccc" = aaaccc
calc:exit