Python基础学习_条件控制

******
20230220
******

# 条件控制 ———— if...else

def account_login1():
    password = input('Password: ')
    if password == '12345':
        print('Login in success!_test one')
    else:
        print('Wrong password or invalid input!')
        account_login1()
account_login1()

def account_login2():
    password = input('Password: ')
    password_correct = password == '12345'
    if password_correct:
        print('Login in success!_test two')
    else:
        print('Wrong password or invalid input!')
        account_login2()
account_login2()


******
# 条件控制 ———— 多条件判断:if...elif...else

password_list = ['*#*#','12345']
def account_login():
    password = input('Password:')
    password_correct = password == password_list[-1]
    password_reset = password == password_list[0]
    if password_correct:
        print('Login in success!')
    elif password_reset:
        new_password = input('Enter a new password:')
        password_list.append(new_password)
        print('Your password has changed successfully!')
        account_login()
    else:
        print('Wrong password or invalid input!')
        account_login()
account_login()


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

******
20230221
******
# 条件控制 ———— 循环(Loop): for与while
# for 循环 (于...其中的每一个元素,做...事情)

# t = 'every_letter' in 'hello world'   # 返回一个判断'every_letter'包含在'hello world'的布尔值
# print(t)                              # 打印t的结果

for every_letter in 'hello world':      # 依次用'every_letter'存储'hello world'的每一元素
    print(every_letter)                 # 用for循环依次打印出'hello world'每一个字符

hw = ['hello', 'world', '1', 1]         # 定义一个有四个元素的列表hw
for test in hw:                         # 依次用test存储hw中的每一元素
    print(test)                         # 用for循环依次打印出列表hw中的每一个字符

******************************************************************************************************
******
20230223
******
# 条件控制 ———— 多条件判断:if...elif...else

password_list = ['*#*#','12345']
def account_login():
    password = input('Password:')
    password_correct = password == password_list[-1]
    password_reset = password == password_list[0]
    if password_correct:
        print('Login in success!')
    elif password_reset:
        new_password = input('Enter a new password:')
        password_list.append(new_password)
        print('Your password has changed successfully!')
        account_login()
    else:
        print('Wrong password or invalid input!')
        account_login()
account_login()

******
# 条件控制 ———— 循环(Loop): for与while
# for 循环 (于...其中的每一个元素,做...事情)

# t = 'every_letter' in 'hello world'   # 返回一个判断'every_letter'包含在'hello world'的布尔值
# print(t)                              # 打印t的结果

for every_letter in 'hello world':      # 依次用'every_letter'存储'hello world'的每一元素
    print(every_letter)                 # 用for循环依次打印出'hello world'每一个字符

hw = ['hello', 'world', '1', 1]         # 定义一个有四个元素的列表hw
for test in hw:                         # 依次用test存储hw中的每一元素
    print(test)                         # 用for循环依次打印出列表hw中的每一个字符

******
# 条件控制 ———— 循环(Loop)
# for 循环_练习
# 需求:打印1+1=2,2+1=3,...10+1=11.

# number = [1,2,3,4,5,6,7,8,9,10]
# for every_number in number:
#    result = every_number + 1
#    print(result)

for num in range(1,11):
    print(str(num) + ' + 1 = ',num)

******
# 条件控制 ———— 循环(Loop)
# for 循环_练习:把for和if结合起来使用
# 需求:歌曲列表中有三首歌"Holy Diver, Thunderstruck, Rebel Rebel",当播放到每首时,分别显示对应的歌手名字"Dio,AC/CD,David Bowie".

songslist = ['Holy Diver','Thunderstruck','Rebel Rebel']
for song in songslist:
   if song == 'Holy Diver':
       print(song, '- Dio')
   elif song == 'Thunderstruck':
       print(song, '- AC/CD')
   elif song == 'Rebel Rebel':
       print(song, ' - David Bowie')

#   else:
#       print(song + ' - David Bowie')

******
# 条件控制 ———— 循环(Loop)
# 嵌套循环(Nested Loop)
# 练习: 写个乘法口诀表(九九表)

for i in range(1,10):
    for j in range(1,10):
        print('{} X {} = {}'.format(i,j,i*j))

# print('{}{}{}'.format(1,2,3))


******
# 条件控制 ———— 循环(Loop)
# while 循环 (只要...条件成立,就一直做...)

while 1 < 3:
    print('1 is smaller than 3')

******
# 条件控制 ———— 循环(Loop)
# while 循环
# 写个条件控制while循环停下来

count = 0
while True:
    print('Repeat this line !')
    count = count + 1
    if count == 6:
        break

******
# 条件控制 ———— 循环(Loop)
# while 循环
# 练习: 让while循环停下来的另外一种方法:改变使循环成立的条件
# 需求: 为解释这个例子,我们在前面登录函数基础上,给登录函数增加一个新功能,即输入密码错误超过3次就禁止再次输入密码.

password_list = ['*#*#','12345']

def account_login():
    tries = 3
    while tries > 0:
        password = input('Password:')
        password_correct = password == password_list[-1]
        password_reset = password == password_list[0]
        if password_correct:
             print('Login in success!')

        elif password_reset:
             new_password = input('Enter a new password:')
             password_list.append(new_password)
             print('Your password has changed successfully!')
             account_login()
        else:
            print('Wrong password or invalid input!')
            tries = tries - 1

    else:
        print('Your account has been suspended')

account_login()


******
# 条件控制 ———— 循环(Loop)
# 练习1
# 需求: 设计一个函数,在桌面的文件夹上创建10个文本,以数字给它们命名.

# 方法1_函数方式
def text_create():
    for name in range(1,11):
#        file_path = 'C:/Users/M7I5SV2/Desktop/python练习/G08/'
#        full_path = file_path + str(name) + '.txt'
#        file = open(full_path,'w')
        file = open('C:/Users/M7I5SV2/Desktop/python练习/G08/' + str(name) + '.txt', 'w')
        file.write(' ')
        file.close()
text_create()

# 方法2_非函数方式
for name in range(1,11):
    desktop_path='C://Users/M7I5SV2/Desktop/python练习/G08/法2/'
    full_path=desktop_path+str(name)+'.txt'
    file=open(full_path,'w')
    file.close()

******
# 条件控制 ———— 循环(Loop)
# 练习2
# 需求: 设计一个复利计算函数invest(),它包含三个参数:amount(资金),rate(利率),time(投资时间).输入每个参数后调用函数,应该返回每一年的资金总额.它看起来就应该像这样(假设本金100,利率为5%,投资时间为12):

"""
def invest(amount, rate, time):
    principal_amount = amount
    print('principal_amount:',principal_amount)
    rate_change = rate / 100
    amount = amount * (1 + rate_change)
    print('year {}: '.format(time), '${}'.format(amount))
invest(100,5,1)                                            #只打印计算了某一年的资金总额
"""
def invest(amount, rate, time):
    principal_amount = amount
    print('principal_amount:',principal_amount)
    rate_change = rate / 100
    for i in range(1, time + 1):
        amount = amount * (1 + rate_change)
        print('year {}: '.format(i), '${}'.format(amount))

invest(100,5,12)    #打印计算的每一年的资金总额

******
# 条件控制 ———— 循环(Loop)
# 练习3
# 需求: 打印1~100内的偶数

"""
num = [1,2,3,4,5,6,7,8,9,10]
if num[1] % 2 == 0:
    print(str(num[1]))       #打印列表num内某一偶数
else:
    print('There is no even number here! ')
"""
"""
for num in range(1,101):
    if num % 2 == 0:
        print(str(num))       #打印1~100内的偶数
"""

num_sum = 0
for num in range(1,101):
    if num % 2 == 0:
        num_sum = num_sum + 1
        print(str(num), '是第{}个偶数'.format(str(num_sum)))   #打印1~100内的偶数,并一 一对应是第几个.

******


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值