zoukankan      html  css  js  c++  java
  • 学习python的不知道第几天,整理一下所学内容

    数字类型:int(数字),bool01),str(字符串),bytes(字符串,中文打印出来为16进制),list(列表),dict(字典),tuple(元组)等

     

    格式化输出: %s :百分号为占位符,s表示为字符串,d表示为数字

               

    name = input('请输入姓名:')
    sex = input('请输入性别:')
    age = int(input('请输入年龄:'))
    height = int(input('请输入身高:'))
    job = input('请输入工作:')
    like = input('请输入爱好:')
    
    msg = '''-----%s的自我介绍----
    name : %s
    sex : %s
    age : %d
    height : %d
    job : %s
    like : %s
    ------谢谢大家--------''' %(name,name,sex,age,height,job,like)
    print(msg)
    %s格式化输出

    Format:按顺序添加

    s = '我叫{},来自{},今年{}岁,身高{},再说一遍我叫{}'.format('艾志农','江西吉安','25','183','艾志农')
    print(s)
    
    name = input('请输入你的姓名:').strip()
    form = input('来自哪里:').strip()
    age = input('请输入你的年龄:').strip()
    height = input('请输入你的身高:').strip()
    s1 = '我叫{0},来自{1},今年{2}岁,身高{3},再说一遍我叫{0},高{3}'.format(name,form,age,height)
    print(s1)
    
    
    name = input('请输入姓名:')
    s2 = '我叫{name},来自{form},今年{age}岁,身高{heigh},再说一遍我叫{name}'.format(form='江西吉安',name=name,age=18,heigh=183)
    print(s2)
    format格式化输出

    While else  当循环被break打断时,else结果不会被执行

    count = 0
    while count < 10 :
        count += 1
        if count > 5 :
            break
        print(count)
    else:
        print('程序结束')
    while else

    编码有asciiUnicodeutf-8gbk

      Ascii8位等于1个字节,表示1个字符

      Unicode32位等于4个字节,表示1个字符

      Utf-88位等于一个英文;

         欧洲 162个字节,表示1个字符

         亚洲 243个字节,表示1个字符

     Gbk1个英文 8位,1个字节

         亚洲 16位,2个字节

    逻辑运算:not > and > or

    print(3>4 or 4<3 and 1==1)
    print(1 < 2 and 3 < 4 or 1>2 )
    print(2 > 1 and 3 < 4 or 4 > 5 and 2 < 1)
    print(1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8)
    print(1 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6)
    print(not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6)
    优先级测试

        Int 转换成bool 非零转换成Ture,零为false

        Str 转换成bool 空为false 非空为Ture

        Str转换成int 只能数字之间转换

    索引和切片:字符串可以被切片:s[::步长] 顾头不顾尾

    #索引和切片 [头:尾:步长] ,从头至尾下标0开始,0 1 2 3...
    #                    从尾到头下标-1开始,-1 -2 -3 -4 ...
    
    s = 'aizhinog'
    s1 = s[0]
    print(s1)
    
    s2 = s[0:]
    print(s2)
    
    s3 = s[4::-2]
    print(s3)
    
    s4 = s[1:7:2]
    print(s4)
    字符串切片

    Str(字符串)的用法:

      Replace替换

    str = '111222444'
    print(str.replace('1','3'))
    replace

      Split转换成列表,默认是空格,可以设置成其它字符串

    s = 'aizhinong*aike*iping'
    s1 = s.split('*')
    print(s1)
    split

      Capitalize首字母大写

    s = 'aizhinong'
    s1 = s.capitalize()
    print(s1)
    capitalize

      Upper全大写

      Lower全小写

    s = 'aizhinong'
    s1 = s.upper()
    s2 = s.lower()
    print(s1,s2)
    upper、lower

      Swapcase大小写翻转

    s = 'aizhinong'
    s1 = s.swapcase()
    print(s1)
    swapcase

      Title每个用特殊字符或者数字的首字母大写

    s = 'ai1zhi1nong'
    s2 = s.title()
    print(s2)
    title

      center居中,默认用空白填充,可以为其它字符串

    s = 'aizhinong'
    s1 = s.center(30,'1')
    s2 = s.center(50)
    print(s1)
    print(s2)
    center

      Expandtabs返回使用空格扩展所有制表符的副本。如果未指定tab size,则假定tabsize为每8个字符。:

    s = 'ai	zhi	nong'
    s1 = s.expandtabs()
    s2 = s.expandtabs(10)
    print(s1)
    print(s2)
    expandtabs

      Startswith以什么为开头

    s = 'aizhinong'
    s1 = s.startswith('z',2,8)
    s2 = s.startswith('aizhi')
    print(s1,s2)
    startswith

      Endswith以什么结尾

      find通过元素找索引,找到返回下标,找不到返回-1

      Index通过元素找索引,找不到则报错

    s = 'aizhinong'
    s1 = s.find('z')
    s2 = s.index('n')
    print(s1,type(s1))
    print(s2,type(s2))
    find、index

      Strip:默认删除前后空格,左边为lstrip,右边为rstrip

    s = '    +++---aizhi*no+ng  '
    s1 = s.strip(' +-')
    print(s1)
    strip

      Count返回字符串中某个字符的数量

    s = 'aizhinong'
    s1 = s.count('n',1,8)
    print(s1)
    count

    公用方法:

      Len()         长度

      Count()        次数

      index()       位置

      Sort()       排序,默认为正序

      Sortreverse=ture    倒序

      Reverse       翻转

    List(列表)的增删改查:

      Append(对象)     增加,在最后增加

      Insert(索引,对象) 插入,指定位置

      Extend(对象)   插入可迭代对象,只接受一个参数,分解后再逐个加入,再最后增加,int类型无法迭代,所以会报错

      Pop(索引)     删除,默认删除最后一个,只能单个删除

      Remove(元素)   删除,按元素删除,只能单个删除

      Clear()      清空列表

      Del 列表名       删除列表

      列表名[索引]     通过列表索引直接赋值修改,可切片修改,可迭代对象,单个值分解成元素再加入,无限制加入

      For in         逐个打印

    list = ['艾克','','23岁','183','70kg']
    
    list.append('喜欢跑步')
    print(list)
    
    list.insert(3,'柚柚柚')
    print(list)
    
    list.extend([123])
    print(list)
    
    list.pop(4)
    print(list)
    
    list.remove('183')
    print(list)
    
    del list[0:4:2]
    print(list)
    
    list[0:2] = 'aike','nv','ddd'
    print(list)
    
    list.reverse()
    print(list)
    列表的增删改查

    Tuple(元组):元组称为只读列表,可循环,可切片;‘儿子’不能修改,‘孙子‘可能可以改

    tu = (1,2,3,'alex',[2,3,4,'taibai'],'egon')
    tu[4][3] = tu[4][3].upper()
    print(tu)
    
    tu[4].append('sb')
    print(tu)
    元组的修改

    Dict(字典)的增删改查:分为可变数据类型和不可变数据类型;

      不可变数据类型称为可哈希:元组,boolstrint

      可变数据类型称为不可哈希:listdictset

      字典中的键值(key)必须是不可变数据类型,可哈希

          Value可以为任意数据类型

      字典的优点:二分查找查询,存储大量的关系数据

      特点:无序的

      增:没有该对象则添加,有则覆盖

    dic1 = {'name':'aike','age':18,'sex':'men',}
    dic1['hight'] = 183
    dic1['age'] = 25
    print(dic1)
    增加

      增加:setdefault 没有该对象则添加,有则不改变

    dic1 = {'name':'aike','age':18,'sex':'men',}
    dic1.setdefault('hight',183)
    dic1.setdefault('age',25)
    print(dic1)
    s
    setdefault增加

      Pop     删除,有返回值,返回值为value;可设置返回值;若删除的键不存在,返回设置的返回值,没有设置返回值则报错

      Popitem:  随机删除,返回值为元组,不接受指定删除

      Del:    无返回值,删除的键不存在则报错 可直接删除该字典

      Clear:    清空字典

    print(dic1.pop('name'))
    dic1.pop('name')
    print(dic1)
    print(dic1.pop('hight','输入有误'))
    
    dic1.popitem)
    print(dic1)
    print(dic1.popitem())
    pop和ppopitem

      Update:  修改

    dic2 = {'name':'艾志农','height':183}
    dic1.update(dic2)  #把dic2 更新到 dic1  
    print(dic1)
    View Code

      For in:   查询

    dic1 = {'name':'aike','age':18,'sex':'men',}
    print(dic1.keys(),type(dic1.keys()))
    print(dic1.values())
    print(dic1.items())
    
    for i in dic1:
        print(i)
    for i in dic1.keys():
        print(i)
    
    for i in dic1.values():
        print(i)
    
    a,b = 1,2
    print(a,b)
    
    a = 1
    b = 2
    a,b = b,a
    print(a,b)
    a,b = [1,2],[2,3]
    a,b = (1,2)
    print(a,b)
    
    for k,v in dic1.items():
        print(k,v)
    
    v1 = dic1['name']
    print(v1)
    
    v2 = dic1['name1']  # 报错
    print(v2)
    keys、values、items

      字典[]:  查询,没有则报错

      Get     可设置返回值

    dic1 = {'name':'aike','age':18,'sex':'men',}
    print(dic1.get('name1','没有这个键'))
    get
    join的用法:列表转换成字符串;对象必须为可迭代,可以为字符串,列表(不能嵌套),元组(不能嵌套)等,不能为数字
           spilt:字符串转换成列表。
    s = ['aike','18','柚柚柚','0822']
    s1 = '-'.join(s)
    print(s1)
    
    s = ('aike','18','柚柚柚','8888')
    s1 = '+'.join(s)
    print(s1)
    
    
    s = 211111
    s1 = '+'.join(s)
    print(s1)   #报错
    join
    range:  range(头,尾,步长)  相当于列表,但里面都是数字, 开头为0可以不写头
    for i in range(0,100):
        print(i)
    
    for i in range(0,100,2):
        print(i)
    
    for i in range(100,0,-2):
        print(i)
    
    for i in range(100,-1,-2):
        print(i)
    range
     
    
    


  • 相关阅读:
    开发工具 内存,性能检测工具
    数据结构 二分法查找
    C语言 goto语句
    C语言 结构体中的零长度数组
    C语言 结构体(联合体)对齐规则
    C++ STL堆操作
    C语言 sscanf用法详解
    Sword 内核队列二
    Sword 内核队列一
    Sword libcurl回调函数相关知识
  • 原文地址:https://www.cnblogs.com/aizhinong/p/11334896.html
Copyright © 2011-2022 走看看