新手必看

Python字符串

  • 字符串是一个字符的一个序列,字符串通常只是一串单词。
  • 注意:字符串要用单引号、双引号、三引号括起来
  • 字符串格式化案例:name = ‘Allen’    ------ print ('my name is {}'.forma (name))

Python标识符

  • 标识符是电脑语言中允许作为名字的有效字符串集合
  • 第一个字符必须是字母或者下划线;
  • 剩下的字符可以是字母和数字或者下划线
  • 大小写敏感

Python变量与赋值

 

  • 变量用来存储数据,是标识符的一种。Python变量的命名规则与标识符的明明规则一样
  • Python是动态类型语言,也就是说不需要预先生命变量的类型,变量的类型和值在赋值的那一刻呗初始化

Python列表和元组

 

  • 可以将列表和元组当成普通的“数组”,他能保存任意数量任意类型的Python对象,和数组一样,通过从0开始的数字索引访问元素,但是列表和元组可以存储不通类型的对象
  • 列表和元组有几个重要的区别,列表元素用中括号[]包裹,元素的个数以及元素的值可以改变。元组元素用()包裹,不可以更改。元组可以看做只读列表,通过切片运算[]和[:]可以得到子集,这一点与字符串的使用方法是一样的。
  • >>>list = [1,2,3,4]  
  • >>>list               #打印列表
  • [1,2,3.4]        
  • >>>list[0]           #打印第0个索引对象
  • 1
  • >>>list[2:]         #打印第二个索引到最后一个
  • [3,4]
  • >>>list[:3]         #打印从0到3个索引对象
  • [1,2,3]
  • >>>list[1]=5  #替换第1号索引对象
  • list
  • >>>[1,5,3,4]

  Python字典   

  • 字典是Python中的映射数据类型,工作原理类似Perl中的关联数组或者哈希表,有键-值(key-value)对构成。几乎所有类型的Python对象都可以用作键,不过一般还是以数字或者字符串最为常用
  • 值可以是任意类型的Python对象,字典元素用大括号{}包裹
  • 语法
    info = {
        'stu1101': "TengLan Wu",
        'stu1102': "LongZe Luola",
        'stu1103': "XiaoZe Maliya",
    }
  • 字典的特性:dict是无序的、key必须是唯一的
  • 增加
    >>> info["stu1104"] = "苍井空"
    >>> info
    {'stu1102': 'LongZe Luola', 'stu1104': '苍井空', 'stu1103': 'XiaoZe Maliya', 'stu1101': 'TengLan Wu'}
  • 修改
  • >>> info['stu1101'] = "武藤兰"
    >>> info
    {'stu1102': 'LongZe Luola', 'stu1103': 'XiaoZe Maliya', 'stu1101': '武藤兰'}
  • 删除

    >>> info
    {'stu1102': 'LongZe Luola', 'stu1103': 'XiaoZe Maliya', 'stu1101': '武藤兰'}
    >>> info.pop("stu1101") #标准删除姿势
    '武藤兰'
    >>> info
    {'stu1102': 'LongZe Luola', 'stu1103': 'XiaoZe Maliya'}
    >>> del info['stu1103'] #换个姿势删除
    >>> info
    {'stu1102': 'LongZe Luola'}
    >>>
    >>>
    >>>
    >>> info = {'stu1102': 'LongZe Luola', 'stu1103': 'XiaoZe Maliya'}
    >>> info
    {'stu1102': 'LongZe Luola', 'stu1103': 'XiaoZe Maliya'} #随机删除
    >>> info.popitem()
    ('stu1102', 'LongZe Luola')
    >>> info
    {'stu1103': 'XiaoZe Maliya'}

  • 查找

    >>> info = {'stu1102': 'LongZe Luola', 'stu1103': 'XiaoZe Maliya'}
    >>>
    >>> "stu1102" in info #标准用法
    True
    >>> info.get("stu1102") #获取
    'LongZe Luola'
    >>> info["stu1102"] #同上,但是看下面
    'LongZe Luola'
    >>> info["stu1105"] #如果一个key不存在,就报错,get不会,不存在只返回None
    Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    KeyError: 'stu1105'

  • 多级字典嵌套以及操作

    av_catalog = {
    "欧美":{
    "www.youporn.com": ["很多免费的,世界最大的","质量一般"],
    "www.pornhub.com": ["很多免费的,也很大","质量比yourporn高点"],
    "letmedothistoyou.com": ["多是自拍,高质量图片很多","资源不多,更新慢"],
    "x-art.com":["质量很高,真的很高","全部收费,屌比请绕过"]
    },
    "日韩":{
    "tokyo-hot":["质量怎样不清楚,个人已经不喜欢日韩范了","听说是收费的"]
    },
    "大陆":{
    "1024":["全部免费,真好,好人一生平安","服务器在国外,慢"]
    }
    }

    av_catalog["大陆"]["1024"][1] += ",可以用爬虫爬下来"
    print(av_catalog["大陆"]["1024"])
    #ouput
    ['全部免费,真好,好人一生平安', '服务器在国外,慢,可以用爬虫爬下来']

  • 其他姿势

    #values
    >>> info.values()
    dict_values(['LongZe Luola', 'XiaoZe Maliya'])

    #keys
    >>> info.keys()
    dict_keys(['stu1102', 'stu1103'])


    #setdefault
    >>> info.setdefault("stu1106","Alex")
    'Alex'
    >>> info
    {'stu1102': 'LongZe Luola', 'stu1103': 'XiaoZe Maliya', 'stu1106': 'Alex'}
    >>> info.setdefault("stu1102","龙泽萝拉")
    'LongZe Luola'
    >>> info
    {'stu1102': 'LongZe Luola', 'stu1103': 'XiaoZe Maliya', 'stu1106': 'Alex'}


    #update
    >>> info
    {'stu1102': 'LongZe Luola', 'stu1103': 'XiaoZe Maliya', 'stu1106': 'Alex'}
    >>> b = {1:2,3:4, "stu1102":"龙泽萝拉"}
    >>> info.update(b)
    >>> info
    {'stu1102': '龙泽萝拉', 1: 2, 3: 4, 'stu1103': 'XiaoZe Maliya', 'stu1106': 'Alex'}

    #items
    info.items()
    dict_items([('stu1102', '龙泽萝拉'), (1, 2), (3, 4), ('stu1103', 'XiaoZe Maliya'), ('stu1106', 'Alex')])


    #通过一个列表生成默认dict,有个没办法解释的坑,少用吧这个
    >>> dict.fromkeys([1,2,3],'testd')
    {1: 'testd', 2: 'testd', 3: 'testd'}

  • 循环

    #方法1
    for key in info:
    print(key,info[key])

    #方法2
    for k,v in info.items(): #会先把dict转成list,数据里大时莫用
    print(k,v)

posted @ 2016-10-18 16:18  张振兴  阅读(283)  评论(0)    收藏  举报