• Python 复习-1


    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    # @Time   : 2017/10/27 22:46
    # @Author : lijunjiang
    # @File   : Exercise.py
    
    """实现1-100的所有的和"""
    num = 0
    for i in xrange(1, 101):
        num += i
    print(num)
    
    """实现1-500所有奇数的和"""
    num = 0
    for i in xrange(1, 501):
        if 0 != (i % 2):
            num += i
    print(num)
    #####################################################
    num = 0
    for i in xrange(1, 501):
        if 0 == (i % 2):
            continue
        else:
            num += i
    print(num)
    
    """求1 + 2! + 3! + 4! + ...+20!"""
    num = 0
    n = 1
    for i in xrange(1, 21):
        n *= i
        num += n
    print(num)
    
    """对指定一个list进行排序"""
    a = [2, 32, 43, 453, 54, 6, 576, 5, 7, 6, 8, 78, 7, 89]
    a.sort()
    print(a)
    
    """复习字典字符串list	uple常用方法"""
    
    """通用方法"""
    
    str1 = 'abcdefg'
    list1 = ['a', 'b', 'c', 'd', 'e', 'f', 'g']
    tuple1 = ('a', 'b', 'c', 'd', 'e', 'f', 'g')
    dict1 = {"name":"li", "age":20, "addr":"beijing"}
    
    #type() 返回变量数据类型
    print(type(str1))
    print(type(list1))
    print(type(tuple1))
    
    #dir() 查看对象都有哪些属性和方法
    print(dir(str1))
    print(dir(list))
    print(dir(tuple1))
    
    #help() 查看函数对象模块用途的详细说明
    print(help(str1))
    print(help(list1))
    print(help(tuple1))
    
    """适用于字符串 list tuple的方法"""
    #len() 求序列的长度
    print(len(str1))
    print(len(list1))
    print(len(tuple1))
    
    # + 连接2个序列
    print(str1 + '123')
    print(list1 + [123, 234])
    print(tuple1 + (123, 234))
    
    # * 重复序列元素
    print(str1 * 4)
    print(list1 * 4)
    print(tuple1 * 4)
    
    # in 判断元素是否在序列中
    print('a' in str1)
    print('b' in list1)
    print('g' in tuple1)
    
    # max() 返回最大值
    print(max(str1))
    print(max(list1))
    print(max(tuple1))
    
    # min() 返回最小值
    print(min(str1))
    print(min(list1))
    print(min(tuple1))
    
    
    str1 = 'abcabc'
    tuple1 = ('a', 'b', 'c', 'a', 'b', 'c')
    list1 = ['a', 'b', 'c', 'a', 'b', 'c']
    # count() 返回值出现的次数
    print(str1.count('b'))
    print(tuple1.count('b'))
    print(list1.count('b'))
    # insdex() 返回值的下标
    print(str1.index('a'))
    print(tuple1.index('a'))
    print(list1.index('a'))
    
    """字符串方法"""
    
    str1 = 'abcabc'
    
    # find() 字符串中查找字符串,返回查找字符串中第一个字符的下标,未找到返回-1
    print(str1.find('ca'))
    
    # replace(str1,str2) 替换 将str1替换为str2
    print(str1.replace('ca', 'TT'))
    
    # split(srt) 分割 以str 为分割符,返回一个列表 类似shell中awk -F
    print(str1.split('b'))
    
    # join(str) 以str连接字符串
    print('||'.join(str1.split('b')))
    
    # strip() 去除字符串两边的空格
    # lstrip() 只去除左边空格 rstrip() 只去除右边空格
    str1 = '   ab ca b  '
    print(str1)
    print(str1.strip())
    print(str1.rstrip())
    print(str1.lstrip())
    
    # format()
    # print('str0 {0} str1{1}'.format(str0, str1)) 执行效率最高
    print("hello {0}".format(str1))
    
    """list 方法"""
    list1 = ['a', 'b', 'c', 'd', 'e', 'f', 'g']
    # list.append() 追加一个元素到列表最后
    list1.append('append')
    print(list1)
    
    # list.extend() 追加一个可迭代的对象到列表中
    list1.extend(xrange(10, 15))
    print(list1)
    
    # list.insert() 在某个下标前插入元素
    list1.insert(1, 'insert')
    print(list1)
    
    #list.remvoe() 删除某个元素
    list1.remove("insert")
    print(list1)
    
    # list.sort() 给列表排序
    list1.sort()
    print(list1)
    
    # list.reverse() 倒序
    list1.reverse()
    print(list1)
    
    # list.pop()
    # 删除并返回某个下标的元素(不指定下标默认为最后一个)
    list1.pop()
    print(list1)
    list1.pop(0)
    print(list1)
    
    """字典的方法"""
    dict1 = {"name":"li", "age":20, "addr":"beijing"}
    
    # get() 根据键获取值
    print(dict1.get('name'))
    
    # setdefault() 设置默认值,当KEY有值时,保持原值,当key没有值则设置该key的值
    print(dict1.setdefault('name'))
    print(dict1.setdefault('name'), 'jiang')
    print(dict1.setdefault('ip', 'localhost'))
    print(dict1)
    
    # keys() 获的字典的Key (一次性取出所有)
    print(dict1.keys())
    
    # iterkeys() 获得key的值 (对象 且逐个取出 效率高)
    print(dict1.iterkeys())
    print(type(dict1.iterkeys()))
    # for keys in dict1.iterkyes():
    #     print(keys)
    
    # values() 获取所有key的值(一次性取出所有)
    print(dict1.values())
    
    # iteritems() 获得一个对象(逐个取出) 效率高
    print(dict1.iteritems())
    print(type(dict1.iteritems()))
    
    # pop() 删除并返回某个键的值,必须输入一个存在的key,否则会报错
    print(dict1.pop('ip'))
    print(dict1)
    
    # fromkeys()
    list1 = ["a", "b", "c", "d"]
    k = {}
    n = k.fromkeys(list1, 123)
    print(n)
    
    # zip()
    ### 1
    list1 = ["a", "b", "c", "d"]
    list2 = [12, 234, 32, 23]
    n = zip(list1, list2)
    print(n)
    ### 2 列表转换成字典
    
    list1 = ["a", "b", "c", "d"]
    list2 = [12, 234, 32, 23]
    n = dict(zip(list1, list2))
    print(n)
    
    #dict.updata()
    
    dict1.update(n)
    print(dict1)
    
    # sorted() 指定项目排序
    print sorted(dict1.iteritems(), key = lambda d: d[1], reverse=True) #按valuse值排序
    print sorted(dict1.iteritems(), key = lambda a: a[0], reverse=True) #按key值排序
    
    
  • 相关阅读:
    时间工厂[XDU1013]
    奇妙的旅行[XDU1012]
    金子上的友情[XDU1011]
    素数环问题[XDU1010]
    转盘游戏[XDU1006]
    跳舞毯[XDU1005]
    Tri Tiling[HDU1143]
    A Walk Through the Forest[HDU1142]
    核反应堆[HDU2085]
    How Many Trees?[HDU1130]
  • 原文地址:https://www.cnblogs.com/lijunjiang2015/p/7741068.html
Copyright © 2020-2023  润新知