• 第一模块 day4(上)


    2.11    列表循环和排序
    
    n = "银角大王"
    
    n[::-1]
    
    >>> n = "银角大王"
    >>> n[::-1]
    '王大角银'
    
    上面切片,切成的反转,但是实际上不会对源列表造成反转.
    
    ----------------
    
    n = ['银角大王',123]
    n.reverse()
    print(n)
    
    D:Pythonpython.exe D:/cc/反转.py
    [123, '银角大王']
    
    
    reverse反转,直接对源列表造成了反转.
    ---------------------
    
    n.sort()
    
    
    n = [1,2,32,15,7,5]
    n.sort()
    print(n)
    
    排序    
    -----------------------------
    
    n = ['123','678','$','234']
    n.sort()
    print(n)
    
    如果是字符串,就会对比十进制
    
    
    python3 里面.  数字和字符串 无法 在一起进行sort排序,不过python2里面可以
    
    ---------------
    
    针对列表
    
    names=['金角大王', '黑姑娘', 'rain', 'eva', '狗蛋', '银角大王', 'eva','鸡头']    
    
    进入以下操作
    
    通过names.index()的方法返回第2个eva的索引值
    
    把以上的列表通过切片的形式实现反转
    
    打印列表中所有下标为奇数的值
    
    通过names.index()方法找到第2个eva值 ,并将其改成EVA
    
    
    -------------------
    
    
    根据以下数据结构:
    goods = [
    {"name": "电脑", "price": 1999},
    {"name": "鼠标", "price": 10},
    {"name": "游艇", "price": 20},
    {"name": "美女", "price": 998},
    ]
    实现功能要求:
    1、启动程序后,让用户输入工资,然后进入循环,打印商品列表和编号
    
    2、允许用户根据商品编号选择商品
    
    3、用户选择商品后,检测余额是否够,够就直接扣款,并加入购物车, 不够就提醒余额不足
    
    4、可随时退出,退出时,打印已购买商品和余额
    
    ------------------------------
    
    2.12    元组
    
    不可变 = 只读列表
    
    只有 count 和 index 用法
    
    
    如果元组里面包含可变数据类型, 比如 "列表" , 那么 这个列表可以改变.
    
    >>> data 
    (99, 88, 77, ['Alex', 'Jack'], 33)
    >>> data[3][0] = '金角大王'
    >>> data
    (99, 88, 77, ['金角大王', 'Jack'], 33)
    
    
    2.14    数据类型--字符串
    
    字符串是有序的字符的集合, '' 或者 "" 包含的 属于字符串
    -----------------------
    capitalize    首字母大写
    
    a = "hahx"
    a.capitalize()
    'Hahx'
    ---------------------
    casefold 把字符串全变小写 
    
    
    a ="HAHX"
    a.casefold()
    'hahx'
    -----------------------
    center     补齐
    
    a.center(10,'-')    补齐10个,用- 补齐10个
    '---HAHX---'
    
    a = "welecome to 广东"
    a.count('e')        默认查找所有e 共有3个
    3
    a.count('e',2,-1)    指定从第二个开始到结束,查找有几个字符串 e,只有2个
    2
    -------------------------------
    
    startswith()        判断是否xx开头
    
    -------------------------------
    
    
    endswith
    
    a.endswith('广东')    判断是否广东结尾
    True
    
    -----------------------------------------------
    
    
    find
    
    a = "welecome to 广东"
    a.find('e')    
    1        # 从下标0开始,查找在字符串里第一个出现的子串,返回结果:    
    a.find('e',7)
    7        # 从下标7开始,查找在字符串里第一个出现的子串:返回结果 7
    a.find('s')
    -1        # 找不到返回-1
    
    有点类似 index
    ---------------------------
    
    format()        
    
    s = "Welcome {0} to Apeland,you are No.{1} user.,再次恭喜:{0}"
    s.format('大傻瓜',5)    
    'Welcome 大傻瓜 to Apeland,you are No.5 user.,再次恭喜: 大傻瓜'
    
    里面出现2个{0}, 只要按照默认顺序排列好,就没问题
    
    ------------------------------
    
    s = "Welcome {0} to Apeland,you are No.{1} user"
    s.format('大傻瓜',5)            需要按照默认顺序来,.
    'Welcome 大傻瓜 to Apeland,you are No.5 user.'
    
    
    
    --------------------------------------
    
    s = "Welcome {name} to Apeland,you are No.{count} user."
    s.format(count= 4,name='大傻瓜')            可以不用指定顺序, 只要定义好就可以
    'Welcome 大傻瓜 to Apeland,you are No.4 user.'
    
    
    ---------------------------
    
    isdigit()        判断是否是数字
    
    a = "3"                # 不能直接写3 ,否则会报错. AttributeError: 'int' object has no attribute 'isdigit'
    if not a.isdigit():
        print('no')
    else:
        print('yes')
        
    yes
    
    
    
    ---------------------------------
    
    
    islower()     是否由小写字母组成
    --------------------------------
    
    
    
    isupper()      是否都为大写组成
    
    -----------------------------
    
    isspace()        是否只由空格组成
    
    
    -------------------
    join()        把列表的字符串拼接起来 可以指定拼接的 格式
    
    >>> n = ['alex','jack','rain']
        >>> '|'.join(n)
        'alex|jack|rain'
    -----------------------------
    ljust()        补齐剩下的,从字符串最后一个地方开始补齐指定的格式,如'-'
    
    a ="haha"        
    a.ljust(10,'-')
    'haha------'
    
    ------------------------------
    
    rjust()            补齐剩下的,从字符串最开始地方开始补齐指定的格式,如'*'
    
    a.rjust(10,'*')
    '******haha'
    
    
    -----------------------------
    
    lower()    
    
    方法转换字符串中所有大写字符为小写, 其效果和 casefold() 方法非常相似。
    
    两者的区别是:lower() 方法只对ASCII编码,也就是‘A-Z’有效,
    对于其他语言(非汉语或英文)中把大写转换为小写的情况只能用 casefold() 方法。
    
    
    ------------------------------
    
    strip()            将一个字符串分隔成多个字符串组成的列表
    
    把字符串2边的 
     	 空格去掉
    
    a = "	   简单 
      "
    a
    '	   简单 
      '
    a.split()
    ['简单']                #split之后,组成了列表
    
    
    a ='alex,haha.jbm, mm|qq'
    
    a.split(",")
    ['alex', 'haha.jbm', ' mm|qq']
    
    a.split(" ")
    ['alex,haha.jbm,', 'mm|qq']
    
    
    a.split("|")
    ['alex,haha.jbm, mm', 'qq']
    
    
    
    
    
    lstrip()        split左边的
    
    rstrip()        split右边的
    
    -----------------------------
    
    
    replace()        替换,    如果有多个同样的, 那么会把所有的都改掉
    
    a = "我有一只狗叫jack,jack喜欢吃猪肉,你喜欢jack吗"
    
    a.replace("jack","tom")
    '我有一只狗叫tom,tom喜欢吃猪肉,你喜欢tom吗'
    
    
    a.replace("jack","tom",2)                        加上参数2,那么只改2次
    '我有一只狗叫tom,tom喜欢吃猪肉,你喜欢jack吗'
    
    ---------------------------
    
    
    swapcase()        对字符串的大小写字母进行转换。 
    
    a ='alEXx,haHasS.JMK, Mm|qQ'
    
    a.swapcase()
    'ALexX,HAhASs.jmk, mM|Qq'
  • 相关阅读:
    Redis学习-发布/订阅
    Redis学习-Sentinel
    Redis学习-复制
    Redis学习-持久化
    Redis学习-Set
    Redis学习-SortedSet
    mac下使用apktool反编译
    ImageView setImageURI图片不改变NetWorkImageView 不显示的问题
    使用SharedPreference和对象流存储对象
    解决百度云推送通知,不显示默认Notification
  • 原文地址:https://www.cnblogs.com/666sss/p/11573711.html
Copyright © 2020-2023  润新知