zoukankan      html  css  js  c++  java
  • python基础2

    1,字符串格式化输出

          通过放置个占位符,再把字符串里的占位符与外部的变量做个映射关系。%s就是代表字符串占位符,除此之外,还有%d,是数字占位。

    方法一:如下程序

    name=input("请输入姓名:") age=int(input('请输入年龄:')) score=int(input("请输入成绩")) msg="我叫%s,年龄%d,成绩%d" %(name,age,score) print(msg)

    方法二:如下程序

    name1=input("请输入姓名:")
    age1=input('请输入年龄:')
    score1=input("请输入成绩")
    dic={"name":name1,"age":age1,"score":score1}
    print(dic)
    msg='我叫%(name)s,今年%(age)s岁,成绩为%(score)s分' %dic
    print(msg)

    ps:格式化输出时,出现%默认为就是占位符的%,但若格式化输出的字符串本身含有%,怎么办呢?只用在其后面再加一个%就可以了。

    如下程序:

    msg = '我叫%s,今年%d岁,学习进度为2%%' %("张三",21)
    print(msg)

    2,逻辑运算符

         逻辑运算符and ,or ,not , 其优先级为:在没有()的情况下not 优先级高于 and,and优先级高于or,即优先级关系为( )>not>and>or,同一优先级从左往右计算。

    如判断下列逻辑语句的True,False

    类型一:前后都是比较的条件

    1,3>4 or 4<3 and 1==1
    2,1 < 2 and 3 < 4 or 1>2 
    3,2 > 1 and 3 < 4 or 4 > 5 and 2 < 1
    4,1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8
    5,1 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
    6,not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6

    按照优先级的顺序进行判断,结果分别为:False True True False False False

    类型二:前后都是数字

    print(1 or 2)
    print(2 or 3)
    print(0 or 2)
    print(0 or 3)
    print(1 and 2)
    print(0 and 3)

    其结果为:1,2,2,3,2,0

    ps: x or y , x为真,值就是x,x为假,值是y

             x and y   ,    x为真,值就是y, x为假,值是x。

    3,编码的问题    

          python2解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill),而python3对内容进行编码的默认为utf-8,ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用 8 位来表示(一个字节),即:2**8 = 256,所以,ASCII码最多只能表示 256 个符号。

         显然ASCII码无法将世界上的各种文字和符号全部表示,所以,就需要新出一种可以代表所有字符和符号的编码,即:Unicode

         Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,规定虽有的字符和符号最少由 16 位来表示(2个字节),即:2 **16 = 65536,
    注:此处说的的是最少2个字节,可能更多

        UTF-8,是对Unicode编码的压缩和优化,他不再使用最少使用2个字节,而是将所有的字符和符号进行分类:ascii码中的内容用1个字节保存、欧洲的字符用2个字节保存,东亚的字符用3个字节保存。

       UTF-16 用最少用16位数,去表示一个字符。

       GBK:国标,只能中国人自己用, 一个中文用16位,两个字节表示。

     4,单位转化关系

    1bytes==8bit

    1024bytes == 1kB

    1024KB == 1MB

    1024MB == 1GB

    1024GB == 1TB

    五:练习题:

    1,写代码:计算 1 - 2 + 3 ... + 99 中除了88意外所有数的总和

    sum=0
    start=0
    while start < 99:
        start=start+1
        if start%2 == 1:
            sum=sum+start
        elif start==88:
            pass
        else:
            sum=sum-start
    print(sum)
    View Code

    2,⽤户登陆(三次输错机会)且每次输错误时显示剩余错误次数(提示:使⽤字符串格式化)

    start = 0
    while start<3:
        name = input("请输入用户名:")
        password = input("请输入密码:")
        if name == "hello" and password == "666":
            break
        else:
            start=start+1
            num=3-start
            print("用户名或密码输入错误,请重新输入")
            msg=('你还剩余%d次机会') %(num,)
            print(msg)
    print("用户名和密码输入正确")
    View Code

    3, 制作趣味模板程序需求:等待⽤户输⼊名字、地点、爱好,根据⽤户的名字和爱好进⾏任意现实 如:敬爱可亲的xxx,最喜欢在xxx地⽅⼲xxx

    name = input('请输入你的名字:')
    where = input('请输入地点:')
    hobby = input('请输入你的爱好:')
    msg = '敬爱可亲的%s,最喜欢在%s干%s' %(name,where,hobby)
    print(msg)
    View Code

    4,等待⽤户输⼊内容,检测⽤户输⼊内容中是否包含敏感字符?如果存在敏感字符提示“存在敏感字符请重新输⼊”,并允许⽤户重新输⼊并打印。敏

    感字符:“⼩粉嫩”、“⼤铁锤。

    while True:
        content=input("请输入内容:")
        if "⼩粉嫩" or "⼤铁锤" in content:
            print("存在敏感字符请重新输⼊")
    View Code

     


      

    
    
  • 相关阅读:
    angularjs的$on、$emit、$broadcast
    angularjs中的路由介绍详解 ui-route(转)
    ionic入门教程-ionic路由详解(state、route、resolve)(转)
    Cocos Creator 加载使用protobuf第三方库,因为加载顺序报错
    Cocos Creator 计时器错误 cc.Scheduler: Illegal target which doesn't have uuid or instanceId.
    Cocos Creator 构造函数传参警告 Can not instantiate CCClass 'Test' with arguments.
    Cocos Creator 对象池NodePool
    Cocos Creator 坐标系 (convertToWorldSpaceAR、convertToNodeSpaceAR)
    Cocos Creator 常驻节点addPersistRootNode
    Cocos Creator 配合Tiled地图的使用
  • 原文地址:https://www.cnblogs.com/leiwei123/p/8329767.html
Copyright © 2011-2022 走看看