zoukankan      html  css  js  c++  java
  • Python课程回顾(day05)

    基本数据类型的应用与内置方法

    1.数字类型

    整形(int):多用来记录年龄/身份证号/等级等等。定义方式:age=18。int只能将纯数字的字符串转换为整形,遇到float则会只取整数。

    常用操作:赋值运算、比较运算、算术运算。

    内置方法:只能存一个值,可变(不可hash)

    浮点型(float):多用来记录薪资/身高/体重等等。定义方式:salary=1.7。

    常用操作:赋值运算、比较运算、算术运算。

    内置方法:只能存一个值,可变(不可hash)

    2.字符串类型

    字符串类型多用来记录描述事物特征:例如姓名/爱好/性别等等。可将任意类型转换为字符串。

    常用操作

    ⑴按照索引正反向取值(只能取)

    msg='hello world'
    print(msg[0])
    print(msg[-1])
    print(msg[-1:-5:-1])     (反向一次取值步长应为-1)
    

    ⑵切片:从大字符串切出一片小字符串的功能,顾头不顾尾,可根据需要输入步长(默认步长为1)

    msg='hello world'
    print(msg[0:5])
    print(msg[0::])  此处0为第一个字符,若后面不加结尾值与步长,默认步长为1的全部取出
    

      

    ⑶长度(len):用于记录字符的个数,记录的结果以整形输出。

    msg='hello world'
    print(len(msg))      (中文一个字仅代表一个字符)
    

    ⑷成员运算(in/not in):判断某个字符串内是否含有你需要找的字符

    msg='hello world'
    print('ell' in msg)
    False print('wo' not in msg)
    True

    ⑸strip(移除字符串两边的字符  lstrip移除左边字符  rstrip移除右边字符)

    msg='----------hello world----------'
    print(msg.strip('-'))         若strip后不填则默认为移除空格,若字符串中间含有你要移除的字符则不会移除

    msg=input('>>:    ').strip('*') 若需要去掉某个字符需在用户输入之后执行strip
    if msg == '123':
    print('successful')

    ⑹切分(split):针对有规律的字符串按照某个字符切成列表

    msg='a,b,c,d,e'
    li=msg.split(',',1)   此处需要根据上面的符号进行分割,上面用什么此处就用什么,后面为步长,不写默认为全部分割。
    print(li)
    

    ⑺循环(for)

    msg='hello'
    for item in msg:        此处item为可更改的变量名,意为从msg中依次取出字符赋值给item
        print(item)
    

    ⑻lower与unpper:lower是将字符串中的所有字符转换为小写,upper则相反。

    print('hello WORLD'.lower())
    print('hello world'.upper())
    

    ⑼startswith与endswith:判断结尾是否是某个字符串或字符

    print('hello world'.startswith('h'))    True
    print('hello world'.endswith('x'))      false
    

    ⑽format的三种应用   (format 与 %s的区别就是%s只能依次按照顺序对应相应的值,而format可以在任意位置放入相应的值且不需要按照顺序)

    print('my name is {name}, my age is {age}'.format(age=18,name='kk'))  使用变量成为占位符,再给变量名赋值
    print('my name is {} , my age is {}'.format('kk',18))                 这里{}就等同于%s,会将format里的值依次放入{}
    print('my name is {0}, my age is {1}'.format('kk',18))                按照format内的索引将值填入对应的{}
    

    ⑾split 与 rsplit:切分,将字符串以字符串内多有的符号以列表形式切分,split后步长默认1,若不填默认全部切分。rsplit 是从右向左切分。

    msg='a,b,c,d,e'
    print(msg.split(','))
    print(msg.split(',',1))
    print(msg.rsplit(','))
    print(msg.rsplit(',',1))

    ['a', 'b', 'c', 'd', 'e']
    ['a', 'b,c,d,e']
    ['a', 'b', 'c', 'd', 'e']
    ['a,b,c,d', 'e']

    ⑿join:使用join将可迭代的列表或字典使用符号拼接成字符串

    msg='a:b:c:d:e'
    list1=msg.split(':')
    print(list1)                     
    msg1=','.join(msg)    join可将任何类型的值用逗号分隔开重新组成字符串
    print(msg1)
    

    ⒀replace:是将字符串中的某个字符替换成你需要替换的字符,一层为你需要替换的字符或字符串,二层为要替换的字符或字符串,三层为从替换的个数。

    msg=' my name is kk , my name is kk'
    print(msg.replace('kk','KK',2))
    

    ⒁isdigit:只能判断一个字符是不是纯数字的字符串

    print('9876'.isdigit())
    print('jshdh45'.isdigit())
    

    3.列表类型(list):在中括号内用逗号分隔开来的多个任意类型的值,多用于记录多个值,例如人的爱好,学生姓名等。

    常用操作与内置方法

    ⑴按照索引正反向存取值,可存可取可删除可添加。

    list1=['a','b','c','d']
    print(list1[0])
    list1[0]='A'         (此处改变了list1中a的值)
    print(list1)
    
    list1.append('e')    (此处在list1中添加了一个新的值)
    print(list1)
    del list1[0]         (此处删除了list中的a)
    print(list1)
    

    ⑵长度(len):可以计算出列表中字符串的数量

    list1=['a','b','c','d','KKKKKK']  (字符串的数量是5个所以结果就是5)
    print(len(list1))
    

    ⑶成员运算in/not in:判断列表中是否存在某个字符串

    list1=['a','b','c','d','KKKKKK']
    print('K' not in list1)              (注意是字符串而不是字符)
    True

    ⑷删除 remove 与 pop:remove是单纯的删除某个元素,而pop则是弹出某个元素后并反馈信息。

    list1=['a','b','c','d','KKKKKK']                 list1=['a','b','c','d','KKKKKKK']              
    res=list1.remove('a')                            res=list1.pop(1)
    print(list1)                                     print(list1)
    print(res)                                       print(res)
    
    
    ['b', 'c', 'd', 'KKKKKK']                        ['a', 'b', 'c', 'd']

    None b

    ⑸循环:列表里可以使用for循环取值。

    list1=['a','b','c','d','KKKKKK']
    for item in list1:                 item只是一个变量名,后边的list1中的字符串是它要依次被赋予的值。
        print(item)

    ⑹count:计算某个字符串在当前值里出现的数量

    list1=['a','b','c','c','d','KKKKKK']
    print(list1.count('c'))            count括号内要加你需要查看数量的字符串
    

    ⑺extend 与 append:extend为扩充,就是将extend括号内的值依次添加到列表内。append为添加,与extend不同的是append添加的是单个内容,即append括号内的值是以一个整体添加到列表内的。

    list1=['a','b','c','c','d','KKKKKK']
    list1.extend([1,2,3])
    print(list1)
                                   list1.append([1,2,3])
                                   print(list1)

    ['a', 'b', 'c', 'c', 'd', 'KKKKKK', 1, 2, 3]
                                                             ['a', 'b', 'c', 'c', 'd', 'KKKKKK', [1, 2, 3]]

    ⑻index:取索引值(意就是取出字符串在列表中的索引值是几,并且可以输入起始与结束位置(顾头不顾尾),若字符串不在查找范围内则会报错)

    list1=['a','b','c','c','d','KKKKKK']
    print(list1.index('KKKKKK',0,6))
    

    ⑼insert:插入,在列表中可在随意位置插入字符串。

    list1=['a','b','c','c','d','KKKKKK']
    list1.insert(0,'Z')     (注:0代表索引,Z代表要插入的字符串,字符串是添加在索引之前的。不添加索引则会报错)
    print(list1)
    

    ⑽reverse 与 sort:reverse是反转,可意为将列表倒置过来。sort是排序,就是将字符串从小到大或从大到小进行排序

    list1=[11,4,7,88]
    list1.reverse()       这里进行反转得到的结果是将列表顺序倒置
    print(list1)
    list1.sort()          这里是排序得到的结果是将列表从小到大排序(可是sort内加入reverse=True,意为反转排序,就是从大到小进行排序)
    print(list1)

    该类型总结:

    列表内可以存多个值

    可以用索引来取值(有序)

    是不可变可hash类型

    4.练习队列、堆栈:

    ⑴队列:先进先出(先放进去的先拿出来)

    q=[]
    q.append('1')
    q.append('2')
    q.append('3')
    print(q)
    print(q.pop(0))
    print(q.pop(0))     之前提到过pop后的参数为0时默认从第一位开始弹出
    print(q.pop(0))
    

    ⑵堆栈:先进后出(先放进去的后拿出来)

    q=[]
    q.append('1')
    q.append('2')
    q.append('3')
    print(q)
    print(q.pop(-1))
    print(q.pop(-1))    此处-1等于从最后一个开始弹出
    print(q.pop(-1))
    

      

  • 相关阅读:
    hdu 4297 One and One Story 夜
    hdu 4280 Island Transport 夜
    1389. Roadworks 夜
    hdu 4289 Control 夜
    hdu 4291 A Short problem 夜
    hdu 4284 Travel 夜
    1080. Map Coloring 夜
    正则中的转义符\
    起重复出现作用的量词*和+
    安卓的权限大全和动态使用安卓权限
  • 原文地址:https://www.cnblogs.com/lefy11-/p/9664340.html
Copyright © 2011-2022 走看看