• 【麦兜搞it】Python入门


    一、基本数据类型

    整型、浮点型、布尔型内容略

    1、字符串的格式化

    name='python'
    age=27
    
    # 打印“我是python,今年27岁了”
    new_str='我是'+name+',今年'+str(age)+'岁了'
    print(new_str)
    
    # python2的做法
    new2='我是%s,今年%d岁了'%(name,age)
    print(new2)
    
    # python3的做法
    new3='我是{},今年{}岁了'.format(name,age)
    print(new3)
    # 当大括号比较多的时候,还可以如下做法
    new4='我是{name},今年{age}岁了'.format(
        name='aaa',
        age='bbb'
    )
    print(new4)
    
    # python3.6之后
    new5=f'我是{name},今年{age}岁了'
    print(new5)

     2、空值

    二、数据结构

    1、列表List

    1.1、列表的创建

    a=[1,2,3]
    b=[1,'abc',2.0,['a','b','c']]
    
    print(a)
    print(b)
    print(a[0],a[1],a[2],sep='-')
    
    c=b[1:3]
    s='abcdef'
    
    print(c,type(c))
    print(s[1:3],s[-1],type(s))

    1.2、列表的基本操作

    # 一、获取列表的基本信息
    list1=[9,1,-4,3,7,11,3]
    print('list1的长度=',len(list1))
    print('list1的最大值=',max(list1))
    print('list1的最小值=',min(list1))
    print('list1中3这个元素出现了{}次'.format(list1.count(3)))
    
    # 二、列表的改变
    list2=['a','c','d']
    # 列表结尾添加新元素
    list2.append('e')
    print('list2=',list2)
    
    # 列表元素之间添加新元素
    list2.insert(1,'b')
    print('list2=',list2)
    
    # 删除列表元素
    list2.remove('b')
    print('list2=',list2)
    
    # 修改列表元素
    list2[0]='A'
    print('list2=',list2)
    '''
    注意这里要与字符串进行区分
    a='123'
    a[0]='a'    报错
    a='abc'     只能重新赋值
    '''
    
    # 列表翻转
    list3=[1,2,3]
    list3.reverse()
    print('list3=',list3)
    
    # 列表排序
    list4=[9,1,-4,3,7,11,3]
    list4.sort()                #升序
    # list4.sort(reverse=True)    #降序
    print('list4=',list4)

    1.3、列表解析

    a=[1,2,3,4,5,6,7,8]
    
    b=[item*item for item in a]
    print(b)
    
    c=[item for item in a if item%2==0]
    print(c)

    2、元组Tuple(不可修改)

    2.1、元组的创建及访问

    # 元组的创建
    a=(1,2,3)
    b=1,
    
    print(a,type(a))
    print(b,type(b))
    
    # 元组的访问
    print(a[1])
    print(a[1:])
    print(a[-1])

    2.2、元组的方法

    # 获取元组的基本信息
    tuple1=[9,1,-4,3,7,11,3]
    print('tuple1的长度=',len(tuple1))
    print('tuple1的最大值=',max(tuple1))
    print('tuple1的最小值=',min(tuple1))
    print('tuple1中3这个元素出现了{}次'.format(tuple1.count(3)))
    
    print(tuple1.index(7))  #查询元素7的下标

    3、字典Dictionary

    3.1、字典的创建及访问

    # 字典创建
    a={
        1:'a',
        2:'b',
        '3':'c'
    }
    print(a)
    
    e=dict(a=1,b=2,c='a')
    print(e)
    
    # 字典的访问
    print(e['c'])
    
    # 字典的增加、修改
    e['d']=123
    e['c']=3
    print(e)

    3.2、字典的基本操作

    d={
        'Name':'Jack',
        'Age':9,
        'Grade':5,
    }
    print(d.get('name'))    # 避免传入字典没有的key时报错
    
    print(d.keys())
    print(d.values())
    print(d.items())
    
    c=d.pop('Name')
    print(c)
    print(d)
    
    d.clear()
    print(d)

    4、集合Set

    a={'a','b','c'}
    
    t='d' in a
    print(t)
    
    s=[1,2,3,2,4,5,2]
    s1=set(s)
    print(s1,type(s1),list(s1))
    
    a='1234512'
    s2=set(a)
    print(s2)
    
    s3={1,2,3,4}
    s3.add(5)
    print(s3)
    s3.remove(5)
    print(s3)

    三、逻辑思维

    1、if语句

    a=int(input('请输入一个数字:'))
    
    if a>0:
        print('这是个正数')
    elif a==0:
        print('这是零')
    else:
        print('这是负数')

    2、循环语句

    2.1、while循环

    a=5
    
    while a>0:
        print(a)
        a=a-1
    
    print('结束')

    2.2、for循环

    a='12345'
    b=[1,2,3,4]
    c=('a','b','c','d')
    d={1,2,3,5,9}
    
    for i in d:     # d可以换成a、b、c
        print(i)
    
    print('------------------------------')
    
    e={1:'a',2:'b',3:'c'}
    for a,b in e.items():
        print('{}:{}'.format(a,b))
    
    print('------------------------------')
    
    for i in range(1,5):
        print(i)

    2.3、break和continue

    for i in range(1,5):
        print(i)
        if i%3==0:
            break
    
    print('------------------------------')
    
    for i in range(6):      # 0~5
        if i%2==0:
            continue
        print(i)

    2.4、小运用

    import random
    
    a=random.randint(0,100)  # 产生【0,100】之间的整数(包括0和100)
    
    while True:
        num=int(input('请输入0-100之间的整数:'))
        if num==a:
            print('猜对了')
            break
        elif num>a:
            print('猜大了,请重新猜')
        else:
            print('猜小了,请重新猜')

    四、函数

    1、函数的定义和调用

    def sum(a,b):
        return a+b
    print(sum(5,6))
    print(sum([1,2],[3,4]))
    
    def max(a):
        if not a:
            return None
        max_value=a[0]
        for i in a:
            if i>max_value:
                max_value=i
        return max_value
    
    a=[1,4,5,2,3,8,9]
    print(max(a))

    2、全局的作用域

    基本常识略,以全局变量举例

    z=1
    print(z)
    
    def demo(a):
        global z
        z=z+a
        print(z)
    
    demo(10)
    print(z)

    3、可变参数

    def add(*args):
        result=0
        for i in args:
            result+=i
        return result
    
    print(add(1,2,10,20))

    33

    4、递归

    def demo(n):
        if n==1:
            return n
        return n*demo(n-1)
    
    print(demo(5))

    120

     5、类和对象

    class People:
        def __init__(self,name,age):
            self.name=name
            self.age=age
    
        def say(self):
            print('Hi,my name is {},and I am {} years old.'.format(self.name,self.age))
    
    some=People('Jack',20)
    print(some.name)
    print(some.age)
    some.say()

     6、继承和多态

    class Animal:
        def eat(self):
            print('Animal is eating')
    
    class Bird(Animal):
        def sing(self):
            print('Bird is sing')
    
    class Dog(Animal):
        def eat(self):
            print('Dog is eating')
    
    a=Animal()
    a.eat()
    
    b=Bird()
    b.sing()
    
    d=Dog()
    d.eat()

    7、匿名函数

    def test(x,y):
        return x+2*y
    
    f=lambda x,y:x+2*y
    
    print(test(1,2))
    print(f(1,2))
    
    def demo(x,y,f):
        return f(x,y)
    
    print(demo(1,2,lambda x,y:x+2*y))
    
    def add(n):
        return  lambda x:n+x    # 高阶函数:返回一个函数
    
    s=add(40)                    # 生成s这个函数
    print(s(5))
    print(s(-10))

    8、高阶函数map、reduce、filter

     

    a=[1,2,3,4]
    
    for item in map(lambda x:x*x,a):
        print(item)
    
    s=[item for item in map(lambda x:x*x,a)]
    print(s)
    
    from functools import reduce
    ss=reduce(lambda x,y:x+y,a)
    print(ss)
    
    sss=[item for item in filter(lambda x:x%2==1,a)]
    print(sss)
    s4=[item for item in a if item%2==1]          # 列表解析同样能实现相同功能
    print(s4)

  • 相关阅读:
    TRIGGERS_监测系统_多表视图触发器—向原始数据报表中插入数据
    PROCEDURE_监测系统_原始数据报表数据生成存储过程—求每天平均值插入多表视图
    PROCEDURE_监测系统_数据备份存储过程—备份原始数据,每十分钟一条,取平均值
    TRIGGERS_监测系统_原始数据表触发器—调用告警信息存储过程
    PROCEDURE_监测系统_告警信息存储过程—产生告警信息插入告警表
    秒(s) 毫秒(ms) 微秒(μs) 纳秒(ns) 皮秒(ps)及Java获得 .
    new String(byte[])和byte[]toString() 的区别
    Java 线程池 .
    加载配置文件的方式
    Spring的PropertyPlaceholderConfigurer应用
  • 原文地址:https://www.cnblogs.com/little-monkey/p/11370652.html
Copyright © 2020-2023  润新知