Python小白-day1

(2018.3.14 开始整理)

 第一周第10节课

注释分单行注释与多行注释:

(1) 单行注释: # 被注释的内容

(2)多行注释:''' 被注释的内容  '''  (3个单引号或者3个双引号)

备注:在python中,单引号与双引号等价 


 七、用户输入

字符串拼接

“ %s ” —— string,相当于shell中的dollar符;(常用)

“ %d ” —— 数据;(常用)

“ %f ” —— 浮点(小数) 


  八、格式化输出的三种方法

 方法1

 1 name = input("name:")
 2 age = input("age:")
 3 job = input("job:")
 4 salary = input("salary:")
 5 
 6 info = '''
 7 -------- info of %s --------
 8 Name: %s
 9 Age: %s
10 Job: %s
11 Salary: %s
12 ''' %(name ,name,age,job,salary)
13 print(info)

   name、age、job、salary都是string的格式。

  将age强行转成数据的格式要用int()函数:  

1 age = int(input("age:"))
2 print(type(age))

  转换成字符串格式要用str()函数。

 

方法2(官方推荐)

 1 name = input("name:")
 2 age = int(input("age:"))
 3 job = input("job:")
 4 salary = input("salary:")
 5 
 6 info2 = '''
 7 -------- info of {_name} --------
 8 Name: {_name}
 9 Age: {_age}
10 Job: {_job}
11 Salary: {_salary}
12 '''. format(_name = name,
13             _age = age,
14             _job = job,
15             _salary = salary)
16 print(info2)

 

方法3 (不推荐使用,不清晰)

 1 name = input("name:")
 2 age = int(input("age:"))
 3 job = input("job:")
 4 salary = input("salary:")
 5 
 6 info3 = '''
 7 -------- info of {0} --------
 8 Name: {0}
 9 Age: {1}
10 Job: {2}
11 Salary: {3}
12 '''.format(name,age,job,salary)
13 print(info3)

  


  九、密码模块 getpass

  备注:这个模块在pycharm中不好使,应在cmd中运行

1 import getpass
2 
3 username = input("username:")
4 password = getpass.getpass("password:")
5 
6 print(username,password)

  


  十、 流程控制 逻辑判断

  判断输入用户的用户名与密码是否正确。

 1 # 流程控制,逻辑判断
 2 # 判断输入的用户名和密码是否正确
 3 
 4 _username = 'Alex'
 5 _password = 'abc123'
 6 username = input("username:")
 7 password = input("password:")
 8 
 9 if _username == username and _password == password:
10     print("Welcome user {name} login...".format(name = username))
11 else:
12     print("Invalid username or password!")
13 #print('dddd')

   小游戏 —— 猜年龄(guess age)

 1 # 流程控制,逻辑判断
 2 # 猜年龄:一次机会
 3 
 4 age_of_oldboy = 56
 5 guess_age = int(input("guess age:"))  # 不加int()会出错
 6 if guess_age == age_of_oldboy:
 7     print("yes,you got it!")
 8 elif guess_age > age_of_oldboy:
 9     print("think smaller...")
10 else:
11     print("think bigger!")

    改进一下:只能猜3次;才对就退出(循环while)

 1 # 流程控制,逻辑判断
 2 # 猜年龄:3次机会,猜错就退出;其中哪次才对,也退出。
 3 
 4 age_of_oldboy = 56
 5 count = 0
 6 
 7 while count <3:
 8     guess_age = int(input("guess age:"))
 9     if guess_age == age_of_oldboy:
10         print("yes,you got it!")
11         break  # 退出循环
12     elif guess_age > age_of_oldboy:
13         print("think smaller...")
14     else:
15         print("think bigger!")
16     count +=1
17 else:
18     print("you have tried too many times..fuck off")

    再改进一下:每执行3次,询问要不要继续玩?

 1 # 流程控制,逻辑判断
 2 # 猜年龄:3次机会,3次都猜错后询问是否继续。
 3 
 4 age_of_oldboy = 56
 5 count = 0
 6 
 7 while count <3:
 8     guess_age = int(input("guess age:"))
 9     if guess_age == age_of_oldboy:
10         print("yes,you got it!")
11         break
12     elif guess_age > age_of_oldboy:
13         print("think smaller...")
14     else:
15         print("think bigger!")
16     count +=1
17     if count == 3:
18         continue_confirm = input("Do you want to continue guessing..[y/n]:")
19         if continue_confirm != 'n':
20               count = 0

  


  十一、for循环、continue语句和break语句

  for循环的基本程序1:

1 for i in range (10):
2      print("loop",i)

    运行结果:

loop 0
loop 1
loop 2
loop 3
loop 4
loop 5
loop 6
loop 7
loop 8
loop 9

  for循环的基本程序2:(2是步长)

1 for i in range (0, 10, 2):
2     print("loop", i)

   运行结果:

loop 0
loop 2
loop 4
loop 6
loop 8

  continue语句: 

# continue语句:跳出此次循环,继续下次循环

for i in range(0,10):
    if i < 3:
        print("loop",i)
    else:
        continue
    print("hehe..")

    运行结果:

loop 0
hehe..
loop 1
hehe..
loop 2
hehe..

  break语句:

  (1)

for i in range(0,10):
    print('----------',i)
    for j in range (0,10):
        print(j)

   (2)

for i in range(0,10):
    print('----------',i)
    for j in range (0,10):
        print(j)
        if j > 5:
            break

   分析上述两段程序的差别,理解break的功能:break语句的作用是跳出当前循环(内环)。

 

posted @ 2018-03-14 17:18  不停歇,继续走  阅读(138)  评论(0编辑  收藏  举报