day1-字符串拼接、表达式、break和continue语句
字符串的拼接方式
1.用加号"+"拼接
name = "dick" age = 20 info = '''info:''' + name + '''age:'''+str(age) print(info) #输出 info:dick age:20
2.用占位符“%”拼接
name = "dick" age = 20 info = '''----info----- name:%s age:%d ''' % (name,age) print(info) #输出 ----info----- name:dick age:20
3.用format函数拼接
a.关键字拼接
name = "dick" age = 20 info = '''----info----- name:{name1} age:{age1} '''.format(name1=name,age1=age) print(info) #输出 ----info----- name:dick age:20
b.占位符拼接
name = "dick" age = 20 info = '''----info----- name:{0} age:{1} '''.format(name,age) print(info) #输出 ----info----- name:dick age:20
控制流语句
1.判断:if...else
name = "dick" pwd = "abc123" if name == "dick" and pwd == "cmd": print("欢迎,dick!") else: print("用户名和密码错误")
2.判断:if...elif...else
my_age = 25 user_input = int(input("input your guess num:")) if user_input == my_age: print("Congratulations, you got it !") elif user_input < my_age: print("Oops,think bigger!") else: print("think smaller!")
3.循环:while
原理:在while循环中,条件总是在每次迭代开始时检查(也就是每次循环执行时)。如果条件为True,子句就会执行,然后再次检查条件。当条件第一次为False时,while子句就跳过。
while True: print('please type your name:') name = input() if name == 'dick': break print('Thank you!')
解析:
a.程序要求用户输入name,如果用户输入不是dick,那么就一直循环,到if语句判断为False后跳过if子句,让执行到达while循环的末尾。此时,程序执行跳回到while语句的开始,重新检查条件,因为条件是True,所以让用户重新输入,再if判断
b.一旦用户输入dick,if条件为True,就会执行break语句,跳出while循环子句,接着执行print('Thank you!')
4.循环:for...range()
range()的开始,停止和补偿参数
for i in range(12,16,2)
第一个参数是for循环变量开始的值
第二个参数是上限,但不包含它,也就是循环停止的数字
第三个参数是步长(每次迭代后循环变量增加的值)
print('My name is:') for i in range(5): print('dick five times ( ' + str(i)+')') #输出 My name is: dick five times (0) dick five times (1) dick five times (2) dick five times (3) dick five times (4)
注意:只能在while和for循环内部使用continue和break语句。如果在别处使用这些语句,python就会报错
continue、break和exit()
1.continue和break语句
用法:像break一样,continue语句用于循环内部。如果程序执行遇到continue语句,就会马上跳回到循环开始处,重新对循环条件求值
while True: print('Who are you?') name = input() if name != 'Joe': continue print('Hello, Joe. What is the password? (It is a fish.)') password = input() if password == 'swordfish': break print('Access granted.')
解析:如果用户输入的名字不是Joe,continue语句将导致程序执行跳回到循环开始处。再次对条件求值时,执行总是进入循环,因为条件是True。如果执行通过了if语句,用户就被要求输入口令。如果输入的口令是swordfish,break语句运行,执行跳出while循环,打印Access granted。否则,执行继续到while循环的末尾,又跳回到循环的开始。
2.exit()语句:退出当前整个程序
count = 0 while count<3: age=int(input('please input the age:')) print('count:',count) if age==29: print('you are smart!') exit() elif age < 29: print("too small")