• day12


    上节课作业:

    1、执行python脚本的两种方式

    2、阐述位、字节的关系

    3、简述ascii unicode utf-8 gbk之间的关系

    4、请写出"李杰"分别用utf-8和gbk编码所占的位数

    5、python单行注释和多行注释分别用什么?

    6、声明变量注意事项有哪些

    7、如有一下变量n1=5,请使用int的提供方法,得到该变量最少
    bit_length

    8、布尔值分别有什么
    # "" => 假
    # "ab" => 真

    # 0 => 假
    # 其他 => 真

    a="123"
    b=int(a)

    a=123
    b=str(a)

    a=123
    bool(a)
    b="i"
    bool(b)

    9、阅读代码,请写出执行结果

    a="alex"
    b=a.capitalize()
    print(a)
    print(b)

    请写出输出结果:
    alex
    Alex

    10、写代码, 有如下变量,请按照要求实现每个功能
    name="alex"

    a.移除name变量对应的值两边的空格,并输出移除后的内容
    v1=name.strip()
    print(v1)

    b.判断name变量对应的值是否以"al"开头,并输出结果
    v2=name.startswith("al")
    print(v2)

    c.判断name变量对应的值是否以"x"结尾,并输出结果
    v3=name.endswith("x")
    print(v3)

    d.将name变量对应的值中的"l"替换为"p",并输出结果
    v4=name.replace("l","p")
    print(v4)

    e.将name对应的值根据"l"分割,并输出结果
    v5=name.split("l")
    print(v5)

    f.请问上一题中e分割之后得到的值是什么类型?
    字符串

    g.将name变量对应的值变大写,并输出结果
    v6=name.upper()
    print(v6)

    h.将name变量对应的值变小写,并输出结果
    v7=name.lower()
    print(v7)

    i.请输出name变量对应的值的第二个字符
    print(name[1])

    j.请输出name变量对应的值的前三个字符
    index=0
    while index<3:
    print(nane[index])
    index+=1

    21、字符串是否是可迭代对象?如可以使用for循环每一个元素?
    for item in name: #只要能执行for循环,就是可迭代对象
    print(item)

    22、使用代码实现:
    a.利用下划线将列表的每一个元素拼接成字符串,li="alexeri"
    t="_"
    b=t.join(li)
    print(b)


    b.利用下划线将列表的每一个元素拼接成字符串,li=["alex","eri","rain"]
    c=t.join(li)

    23、python2中的range和python3中的range的区别
    2:
    range 立即创建
    xrange for循环时才一个一个创建

    3:
    for循环时才一个一个创建

    range(100,1,-1)

    24、实现一个整数加法计算器:
    如:
    content=input("请输入内容:") #如5+9或
    v1,v2=content.split('+')
    v1=int(v1)
    v2=int(v2)
    print(v1+v2)




    25、计算用户输入的内容中有几个十进制小数?几个字母?
    如:
    content=input("请输入内容:") #如asduiaf87654321jkl
    num1=0
    num2=0
    for item in content:
    if "a"<=item<="z":
    num1 +=1
    if "0"<=item<="9"
    num2+=1
    print(num1,num2)


    26、简述int和9等数字以及和"xxoo"等字符串的关系+

    27、制作趣味模板程序
    需求:等待用户输入名字、地点、爱好,根据用户的名字和爱好进行任意实现
    test="敬爱的{a}最喜欢在{b}地方干{c}"
    v=test.format(a=input("名字"),b=input("地点"),c=input("爱好"))
    如:敬爱的xxx最喜欢在xxx地方干xxx

    28、制作随机验证码
    流程:
    用户执行程序
    给用户显示需要输入的验证码
    用户输入的值
    用户输入的值和显示的值相同时,否则继续生成随机验证码

    29、开发敏感词语过滤程序,提示用户输入内容,如果用户输入的内容中包含特殊的字符;
    如:"苍老师" "东京热"为***
    v="asdadfg"
    v=v.replace("s","***")
    v=v.replace("a","***")
    print(v)
    30、制作表格
    循环提示用户输入:用户名、密码、邮箱(要求用户输入的长度不超过20个字符,如果)
    如果用户输入q或Q表示不再继续输入,将用户输入的内容以表格形式

    s=""
    while True:
    v1=input(">>>")
    v2=input(">>>")
    v3=input(">>>")
    temp="{a} {b} {c} "
    v=temp.format(v1,v2,v3)
    s+=v()

    break
    print(s.expandtabs(20))


    list 列表 #类
    li=[1,12,9,"age",["是正文","庞麦郎"],"alex"] #对象
    #中括号括起来 ,分割每个元素 列表中元素可以是数字、字符串 可无限嵌套列表,布尔值 所有的都能放进去
    #一个集合,内部可以放置任何东西

    1、列表格式
    2、列表可以嵌套任何类型



    3、索引取值
    print(li[3])
    4、切片
    print(li[3:5]) 子列表


    5、#for循环
    #while循环
    for item in li:
      print(item)

    #列表的元素可以被修改
    li=[1,12,9,"age",["是正文","庞麦郎"],"alex"]
    6、索引修改和删除
    li[1]=120
    print(li)

    li[1]=[11,22,33,44]
    print(li)

    7、切片方式修改和删除
    li[1:3]=[120,90]
    print(li)

    #删除 第一种方式
    del li[1]
    print(li)


    del li[1:3]
    print(li)

    in操作
    li=[1,12,9,"age",["是正文","庞麦郎"],"alex"]
    v=12 in li
    print(v)

    9、操作
    li=[1,12,9,"age",["是正文",["19",10],"庞麦郎"],"alex"]
    li[4][1][0]


    li=[1,12,9,"age",["是正文",["19",10],"庞麦郎"],"alex",True]

    a="123"
    int(a)
    a=123
    str(a)
    #字符串转换列表 内部使用for循环
    s="poiuytrewqasdfghjkl"
    new_li=list(s)
    print(new_li)
    #列表转字符串 需要自己写for循环 既有数字又有字符串
    li=[11,22,33,"123","alex"]
    s=""
    for i in li:
      s=s+str(i)
    print(s)

    列表中只有字符串 直接使用字符串join方法
    li=["123","alex"]
    v="".join(li)
    print(v)

    li=[11,22,33,44]
    #参数
    #v1=li.append(5)
    #print(v1) #none
    #print(li) #[11,22,33,44,5]
    1、#原来值最后追加
    li.append(5)
    li.append("alex")
    li.append([1234,2323])
    print(li)

    2 清空列表
    li.clear()
    print(li)

    3 copy 浅拷贝
    li.copy()
    v=li.copy()
    print(v)

    4计算元素出现的次数
    v=li.count(22)
    print(v)

    5扩展原来列表
    li=[11,22,33,44]
    li.extend([9898,"不得了"])
    print(li)

    li.extend("不得了")
    print(li)


    6根据值获取当前值索引位置(左边优先)
    li.index(33)
    print(li)

    7在指定索引位置插入
    li.insert(0,99)
    print(li)

    8默认删除某个值(指定索引或者默认最后一个)并获取删除的值
    v=li.pop()
    print(li)
    print(v)

    v=li.pop(1)
    print(li)
    print(v)

    9删除列表中的指定值,左边优先
    li.remove(33)
    print(li)

    #pop remove del li[0] del[7:9] clear

    10将当前列表进行反转
    li=[11,22,33,22,44]
    li.reverse()
    print(li)

    11列表的排序
    li=[11,44,22,33,22]
    li.sort() #从小到大排
    print(li)
    li.sort(reverse=true) #从大到小排


    补充:字符串创建之后,不可修改
    v="alex"
    v=v.replace("e","el")
    print(v)

    li=[11,11,33,44]
    li[0]=999

    s="alex"
    s[0]="E" # 不可修改

    列表,有序 元素可以被修改

    列表
    list

    li=[111,22,33,44]

    元组 元素不可被修改,不能增加或者删改
    tuple
    1、书写格式
    tu=(111,22,33,44,) #一般写元组的时候,推荐后面加个逗号


    2#索引
    v=tu[0]
    print(v)

    3#切片
    v=tu[1:3]
    print(v)

    4可以for循环 可迭代对象
    for item in tu:
      print(item)


    5转换
    s="asfgg"
    li=["asdf",1231]
    tu=(123,123,"asdf")

    v1=tuple(s)
    print(v1)
    v2=tuple(li)
    print(v2)
    v3=list(tu)
    print(v3)

    v4="".join(tu) #只含有字符串
    自己写for循环

    li.extend((11,22,33))

    6#元组的一级元素不可修改
    tu=(111,"alex",(11,22),[(33,44)],True, 33,44)
    tu[0] #元素有序
    tu[3][0][0] #取33

    tu[3][0]=567 #可以
    print(tu)

    方法
    count(22) 获取指定元素在元组中的次数
    index(22)


    #1字典结构
    dict
      info={
      "k1":"v1", #键值对
      "k2":"v2"

    }

    #2 字典的value可以是任何值
    info={
      "k1":18
      "k2":True
      "k3":[
        11,
        22'
        33'
        {
          "kk1":"vv1",
          "kk2":"vv2"
          "kk3":(11,22,33,44)
        }
        ]

      "k4":( )


    }

    print(info)


    #3列表、字典不能作为字典的key
    info={
      1:"asdf",
      "k1":"asdf",
      False:"123",
      #[11,22]:123 不行
      (  11,22):123


    }
    print(info)

    #4字典无序


    info={
      "k1":18
      "k2":True
      "k3":[
        11,
        [],
        ()
        22'
        33'
        {
          "kk1":"vv1",
          "kk2":"vv2"
          "kk3":(11,22,33,44)
        }
        ]

      "k4":( )

    }

    5索引方式找到指定元素

    v=info["k1"]
    print(v)


    v=info["k3"][5]["kk3"][0] #11

    #6字典支持del删除
    del info["k1"]
    print(info)

    del info["k3"][5]["kk1"]

    #7字典支持for循环

    for item in info.keys():
      print(item) #输出key
    for item in info.values():
      print(item) #输出值


    for item in info.keys():
      print(item,info[item])
    相当于
    for k,v in info.items():
      print(k,v)

    clear
    copy
    fromkeys

    dic={
    "k1":"v1",
    "k2":"v2"

    }
    #根据序列,创建字典,并指定统一的值
    v=dict.fromkeys(["k1",123,"999"],123)
    print(v) #{123:123,"k1":123,"999":123}


    v1=dic["k1"]
    print(v1)
    #根据key获取值,key不存在时,可以指定默认值(None)
    v2=dic.get("k1",11111)
    print(v2)

    #删除并获取值
    v=dic.pop("k1",90)
    print(dic,v)

    k,v=dic.popitem()
    print(k,v)

    #设置值,
    如果已存在,就不设置,获取当前key对应的值
    不存在,设置,获取当前key对应的值
    v=dic.setdefault("k1","123")
    print(dic,v)

    #
    dic.update({"k1":"111111","k3":"123"})
    print(dic)

    dic.update(k1=123,k3=456,k5="asdf")
    print(dic)


    keys()
    values()
    items()
    get
    update


    整理

    一、数字
    int()

    二、字符串
    replace
    find
    join
    strip
    upper
    lower
    startswith
    split
    format

    template="i am {name} age:{age}"
    v=template,format(name="alex",age=19)
    v=template,format(**{"name":"alex","age":19})

    三、列表
    append
    extend
    insert
    索引 切片 循环

    四、元组
    忽略
    索引 切片 循环 一级元素不能修改

    五、字典
    get
    update
    keys
    items
    values
    for,索引

    dic={
      "k1":"v1"
    }
    v="k1" in dic
    print(v)

    v="v1" in dic.values()
    print(v)

    六、布尔值
    0 1
    bool()

    None "" () {} [] 0 ==False

     2018-08-15


  • 相关阅读:
    C#综合揭秘——细说多线程(上)
    Tinyxml2学习
    GNSS数据下载网站整理,包括gamit、bernese更新文件地址[2020.04更新]
    c#中xml增删查改
    C#比较两个对象中的指定字段值是否相等
    C#数据导出帮助类
    ajax文件下载
    C#中使用NPOI进行DataTable和Excel互转
    使用 ICSharpCode.SharpZipLib.Zip压缩解压文件
    C#DataTable转List<T>互转
  • 原文地址:https://www.cnblogs.com/jiangjunfeng/p/9481566.html
Copyright © 2020-2023  润新知