本节知识点概要:
- 输入
- 注释
- 循环
- 字符串格式化
- 运算符
- 编码
本节内容:
1.输入
user_name = input("请输入你的姓名:")
message = user_name + "进入"
print(message)
注意:
- input输入后得到的内容永远是字符串
- py版本区别:
- py2:name = raw_input('请输入')
- py3:name = input('请输入')
user_name = input("请输入你的姓名:")
password = input("请输入你的密码:")
#用户名和密码拼接
content = "你的用户名是:" + user_name + ";你的密码是:" + passwod
#输出用户名和密码拼接的结果
print(content)
2.注释
# 单行注释
"""
多行注释
"""
3.循环
3.1 if..else
初级条件语句:
gender = input("请输入性别:")
"""
如果是男生:打印再见
否则:打印来呀
"""
if gender == "男"
print("再见")
else:
print("来呀")
2.elif条件
gender = input("请输入性别:")
"""
如果是男生:打印再见
如果是女生:打印来呀
如果是人妖:打印找别人去
否则:打印滚
最后加end
"""
if gender == "男"
print("再见")
elif gender == "女"
print("来呀")
elif gender == "人妖"
print("找别人去")
else:
print("滚")
print("end")
3.练习题
#让用户输入一个数字,猜:如果数字 > 50,则输出:大了;如果数字 <= 50,则输出:小了。
num = input("请输入一个数字:")
number = int(num)
if number > 50:
print("大了")
else:
print("小了")
#用户名密码登录
username = input('请输入用户名:')
password = input('请输入密码:')
if username == "alex" and password == "123":
print("欢迎")
else :
print("用户名密码或错误")
注意:
- input后为字符串,字符串无法比较,注意类型转换
3.2 if嵌套
message = """欢迎致电10086
1.话费查询;
2.流量服务;
3.业务办理;
4.人工服务"""
print(message)
index = input("请选择业务类型:")
index = int(index)
if index == 1:
print("话费查询")
elif index == 2:
print("流量服务")
elif index == 3:
content = """业务办理
1.修改密码
2.修改套餐
3.停机
"""
print(content)
value = input("请选择所需的业务办理类型")
value = int(value)
if value == 1:
print("修改密码")
elif value == 2:
print("修改套餐")
elif value == 3:
print("停机")
else:
print("输入错误")
elif index == 4:
print("人工服务")
else:
print("输入错误")
3.3 while 循环:
3.3.1 while后加条件
count = 1
while True:
print(count)
count = count + 1 #结果为count每次加1,无限循环
while True:
count = 1
print(count)
count = count + 1 #结果为1,无限循环
count = 1
while count <= 10:
print(count)
count = count + 1 #结果为1-10
练习题:打印1-10,没有7
count = 1
while count <= 10:
if count != 7:
print(count)
count = count + 1 #方法一:使用不等于!=
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·
count = 1
while count <= 10:
if count == 7:
pass
else:
print(count)
count = count + 1 #方法二:使用不等于pass
3.3.2 关键字:break
注意:break为结束while整个循环
3.3.3 关键字:continue
注意:continue为重新开始本次循环
3.3.4循环体while else(不常用)
count = 1
while count <= 10:
print(count)
count = count + 1
else: #不在满足while循环条件后触发,或条件等于False
print("else语句")
print("结束")
#结果:打印1-10 else语句 结束
3.3.5 while总结:
- while循环体(后+判断条件)
- break 结束while循环
- continue 结束本次循环,重新开始循环
- while else 循环条件不满足后触发,或条件等于False
2.字符串格式化:
%s为占位符,参数要用逗号隔开
name = input("请输入你的名字:")
do = input("在干什么:")
template = "%s在教室,%s."%(name,do)
print(template)
name = 'alex'
template = "%s现在手机的电量是100%%"%(name) #参数内如果有%,使用两个%%可以不进行占位符
print(template)
知识点:
- %s 占位符,可以代表所有占位符
- %d 占位符,代表数字类型的占位符
- %% 取消占位符,输出为一个%
name = input("请输入姓名:")
age = input("请输入年龄:")
age = int(age)
job = input("请输入工作:")
hobby = input("请输入爱好:")
msg = '''
------------info------------
Name : %s
age : %d
job : %s
hobby : %s
------------end-------------
'''
data = msg %(name,age,job,hobby)
print(data)
3.运算符
+加号,-减号,*乘号,/除号,%求余,**幂次方,//取整数
###打印1-100内的奇数
count = 1
while count <= 100:
val = count % 2
if val == 1:
print(count)
count=count + 1 #方法1
###################
count = 1
while count <= 100:
if count % 2 == 1:
print(count)
count=count + 1 #方法2
###练习题,1-100以内所有数字相加
total = 0
count = 1
while count <= 100:
total = total + count
count=count + 1
print(total)
转换:
- 字符串(str)转数字(int)
- 数字(int)转字符串(str)
- 字符串空值("")和数字(0)转布尔之后为False,其余全部为True
or*注意:value是会先判断是否为True,输出True的值
value = 1 or 9
print(value) #会先判断1和9是否为True,1为True,9就不做判断,输出结果为1
value = 0 or 9
print(value) #会先判断0和9是否为True,0为False,再判断9为True,输出结果为9
value = 0 or ""
print(value) #0和“”都为False,输出结果为空,输出最后一个结果
and*注意:先判断是否为False,输出False,如果都为True,则输出最后一个值
v1 = 1 and 9 #会先判断1,为True,再判断9,为True。输出9
v2 = 1 and 0 #会先判断1,为True,再判断0,为False。输出0
v3 = 0 and 7 #会先判断0,为False,输出0
v4 = 0 and "" #会先判断0,为False,输出0
v5 = 1 and 7 and "" #会先判断1和7,输出7,再判断7和“”,输出空值
综合:
v6 = 1 and 9 or 0 and 6 #会先判断and,1 and 9,结果是9;再判断0 and 6,结果为0,再判断9 or 0,输出9
针对逻辑运算:在没有()的情况下,not优先级高于and,高于or,关系为()>not>and>or,同一优先级从左往右计算
4.编码
- 编码的扩展
- ascii
- Unicode
- ecs2 刚开始出来的时候用
- ecs4 后来开始使用
- utf-8,中文用3个字节,(全球使用)必须使用utf-8编码
- utf-16
- gbk,中文用2个字节(亚洲使用)
- gb2312,中文用2个字节(亚洲使用)gbk的扩展
编码的单位:
-
字符串: “中国” “hello”
-
字符: “中” “e”
-
字节: 编码unicode(一个字符为4字节),编码utf-8(中文单字为3字节,英文单字母为1个字节)
-
位 : 01010101
换算单位:
- 8bit(位)=1byte(字节) - 1024byte(字节)=1KB - 1024GB=1TB - 1024TB=1PB - 1024PB=1EB
ASCII码补充
编码使用场景:
- 计算机内存中的数据计算,数据相加时长度会一致,会使用unicode。
- 数据传输使用字节比较小的编码,例如utf-8