day2 python学习
1.格式化输出
现有一练习需求,问用户的姓名、年龄、工作、爱好 ,然后打印成以下格式
复制代码 ------------ info of Alex Li ----------- Name : Alex Li Age : 22 job : Teacher Hobbie: girl ------------- end -----------------
%s就是占位符的意思,可以在他的后边插入字符串 %d也是占位的 age后边插入的是数字,可以用它来输入数值
name = input("Name:") age = input("Age:") job = input("Job:") hobbie = input("Hobbie:") info = ''' ------------ info of %s ----------- #这里的每个%s就是一个占位符,本行的代表 后面拓号里的 name Name : %s #代表 name Age : %d #代表 age job : %s #代表 job Hobbie: %s #代表 hobbie ------------- end ----------------- ''' %(name,name,age,job,hobbie) # 这行的 % 号就是 把前面的字符串 与拓号 后面的 变量 关联起来 a最好是有括号,这样比较好看出你的意思 print(info)
后边还有一个知识点就是当要打印我当前学习的进度时%
sg = "我是%s,年龄%d,目前学习进度为80%"%('金鑫',18) print(msg)
这样执行的话会报错,因为%在这里是占位符,但
count=0 sum=0 while count<99: count += 1 if count==88:#这一点要注意,count+=1要在上边 否则就会陷入循环 在88这个位置不断的循环不会报错也不出结果 continue elif count%2==1: sum=sum+count else: sum=sum-count print(sum)
是想要表达的是当前的进度时80%
msg = "我是%s,年龄%d,目前学习进度为80%%"%('金鑫',18) print(msg)
这样就可以了,第一个%是对第二个%的转译,告诉Python解释器这只是一个单纯的%,而不是占位符。
3,循环中止语句
break用于完全结束一个循环,跳出循环体,进入另外下一个循环
countinue 用于结束终止当前循环,继续下一次循环
count=0 sum=0 while count<99: count += 1 if count==88:#这一点要注意,count+=1要在上边 否则就会陷入循环 在88这个位置不断的循环不会报错也不出结果 当出现88时 就不执行下边的了往上走 进入然后就从count+=1开始继续 continue elif count%2==1: sum=sum+count else: sum=sum-count print(sum)
12.3,while ... else ..
与其它语言else 一般只与if 搭配不同,在Python 中还有个while ...else 语句
while 后面的else 作用是指,当while 循环正常执行完,中间没有被break 中止的话,就会执行else后面的语句
#6,用户登录(三次机会)并且每次输错时显示剩余登录机会(用到字符串格式化。) #第六题完成的同学可做升级版:当剩余机会为0时,可以询问用户是否在试试,如果用户同意在尝试,那就将在给他三次机会。 name="wang" psw="123" flag=True i=2 while flag: username=input("请输入用户名:") password=input("请输入密码:") if name==username and psw== password: print("登录成功") break 当这里写的是 flag=False 的时候就会还会在打印一遍下边else 的内容 这样不合适 需要用break else: print("你还有%d次登录机会"%i) i=i-1 if i==0: xuanze=input("你是否想再试试?") if xuanze=="是": i=2 else:flag=False else:print("要不要脸")