one

环境申明

第一行用于Linux在系统环境变量中查找运行此脚本的python解释器
第二行告诉python解释器以utf-8编码格式解析当前脚本(在python3中默认就是以utf8编码格式解析)

1
2
#!/usr/bin/env python
# -*- coding:utf-8 -*-

变量赋值

Tips: 等于号两边不能有空格,赋值为字符串时必须用引号或双引号包围,变量名尽量以下划线或英文字幕开始

1
2
name = "Yi Xuan"
number = 1515

打印变量

Tips: 使用print方法时打印的内容必须包含在括号内,变量名不能使用引号或双引号包含起来(被当成字符串)

1
2
name = "Yi Xuan"
print ('My Name Is',name)

用户输入

将用户输入的变量值赋给username变量,input方法括号中的内容为输出给用户看的内容,默认情况下input输入的内容都被当城字符串处理

1
2
username = input("Input UserName: ")
print(username)

模块引用

有一部分函数是已经封装好的需要调用其中的函数,首先需要在头部引用
一般用户输入密码时为了安全会隐藏密码域的内容(此处是使用getpass.getpass()方法实现)
getpass.getpass()函数在pycharm编辑器中不能实时显示效果需要在命令行测试

1
2
3
import getpass
password = getpass.getpass("Input PassWord: ")
print(password)

格式化输出

在需要输出大量内容时一般使用三个单引号或三个双引号把内容包裹起来赋值给一个变量,然后打印变量

方法1

inf变量中的%s表示字符串,通过%按照顺序依次传递变量的值(%d表示数字)

1
2
3
4
5
6
7
8
name = input('Input UserName: ')
passwd = input('Input PassWord:')
info = '''
-------- info of %s ---------
Name: %s
Passwd: %s
''' % (name,name,passwd)
print (info)

方法2

info2变量值花括号中的字符串代表变量名通过format方法指定变量值传递给info3变量值

1
2
3
4
5
6
7
8
name = input('Input UserName: ')
passwd = input('Input PassWord:')
info2 = '''
-------- info of {n} ---------
Name: {n}
Passwd: {p}
'''.format(n=name,p=passwd)
print(info2)

方法3

info3变量值花括号中的数字代表format方法中的变量位置(依次往右从0开始)

1
2
3
4
5
6
7
8
name = input('Input UserName: ')
passwd = input('Input PassWord:')
info3 = '''
-------- info of {0} ---------
Name: {0}
Passwd: {1}
'''.format(name,passwd)
print(info3)

if/else

定义两个变量,如果用户输入的变量与定义的相同输出欢迎登陆消息 否则输出 报错信息(注意行尾冒号)

1
2
3
4
5
6
7
8
_username = "Yi Xuan"
_password = "abc123"
username = input("Input UserName: ")
password = input("Input PassWord: ")
if username == _username and password == _password:
print('Welcome User %s login...'% (username))
else:
print('Invalid UserName Or Password!')

while

条件为真一直循环执行(注意行尾的冒号)

1
2
3
4
5
6
7
count = 0
while True:
if count < 11:
print("Pool: ",count)
count += 1
else:
break

for

注意行尾的冒号

循环打印0-9

range(9)产生从0-9,十个数字

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

只打印偶数

range(0,9,2)从0开始9结束,步长为2

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

猜数字1

猜错给出相应提示,猜对则输出内容并退出,input输入内容默认为字符串,以下使用int()将数据类型改为数字

只猜一次

1
2
3
4
5
6
7
8
9
number = 80
guess_number = int(input("Guess Number: "))
if guess_number == number:
print("yes, you got it.")
break
elif guess_number > number:
print("think smaller...")
else:
print("think bigger!")

循环猜

除非猜对或者强制退出否则一直循环猜测

1
2
3
4
5
6
7
8
9
10
number = 80
while True:
guess_number = int(input("Guess Number: "))
if guess_number == number:
print("yes, you got it.")
break
elif guess_number > number:
print("think smaller...")
else:
print("think bigger!")

猜3次(while)

猜数字猜错超过3次退出程序并给出提示

1
2
3
4
5
6
7
8
9
10
11
12
13
14
number = 80
count = 0
while count < 3:
guess_nunber = int(input("Guess Number: "))
if guess_nunber == number:
print("yes, you got it.")
break
elif guess_nunber > number:
print("think smaller...")
else:
print("think bigger!")
count += 1
else:
print("you have tried too many times...")

猜3次(for)

猜数字猜错超过3次退出程序并给出提示

1
2
3
4
5
6
7
8
9
10
11
12
13
number = 80
count = 0
for i in range(3):
guess_nunber = int(input("Guess Number: "))
if guess_nunber == number:
print("yes, you got it.")
break
elif guess_nunber > number:
print("think smaller...")
else:
print("think bigger!")
else:
print("you have tried too many times...")

猜数字2

循环:猜测超过3次询问是否猜测

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
number = 80
count = 0
while count < 3:
guess_nunber = int(input("Guess Number: "))
if guess_nunber == number:
print("yes, you got it.")
break
elif guess_nunber > number:
print("think smaller...")
else:
print("think bigger!")
count += 1
if count == 3:
contine_confirm = input("do you want to keep guessing..? [n:quit] ")
if contine_confirm != "n":
count = 0

作业

1.编写登录接口

输入用户名密码,认证成功后显示欢迎信息,输错三次后锁定,所需新知识点:文件操作(用户名密码存在于一个文件中,需实现多用户验证)

等后续补充

2.多级菜单

可依次选择进入各子菜单,可返回上一级菜单,所需新知识点:列表,字典

等后续补充