python笔记(1)--基础输入和循环

本节知识点概要:

  • 输入
  • 注释
  • 循环
  • 字符串格式化
  • 运算符
  • 编码

本节内容:

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

猜你喜欢

转载自www.cnblogs.com/lynlearnde/p/11579967.html