• Python学习


    linux安装python

    1. 安装依赖:yum install wget zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make zlib zlib-devel libffi-devel -y
    2. 官网复制链接,wget下载,下载后得到tgz包
    3. tar -xvf解压,
    4. ./configure --prefix=/usr/local/python3
    5. make && make install
    6. 删除原软连接:rm -f /usr/bin/python
    7. 软连接:ln -s /usr/local/python3/bin/python3 /usr/bin/python

    ./configure是一个常见的命令,用于准备源代码以便进行编译和安装
    ./configure脚本会执行以下操作:
    1.检查系统中是否安装了所需的依赖项
    2.设置编译选项
    3.生成Makefile文件
    运行./configure脚本之后,你可以使用make命令来编译源代码,并使用make install命令来安装生成的可执行文件、库和其他文件

    –prefix选项是用来指定程序安装路径的,如果不配置该选项,安装后可执行文件默认放在/usr/local/bin中,库文件默认放在/usr/local/lib中,配置文件默认放在/usr/local/etc中,其它的资源文件放在/usr/local/share中。如果配置–prefix,如:./configure --prefix=/usr/local/test,可以把所有的资源文件放在/user/local/test路径中

    /usr/bin/目录是用来存放系统命令的目录,普通用户和超级用户都可以执行


    如删除python老版本,会对yum造成影响:

    1. vi /usr/libexec/urlgrabber-ext-down
      首行 #! /usr/bin/python 改为 #! /usr/bin/python2
    2. vi /usr/bin/yum
      首行 #! /usr/bin/python 改为 #! /usr/bin/python2

    在这里插入图片描述


    值类型:
    数字
    字符串
    列表
    元组
    集合
    字典

    print(“666+111”)
    print(666+111)
    print(“11.1”)
    print(11.1)
    print(“helloworld”)

    666+111
    777
    11.1
    11.1
    helloworld
    在这里插入图片描述
    在这里插入图片描述

    m.n 控制数据宽度和精度:
    %5.2f : 表示将宽度控制为5,小数点精度控制为2

    在这里插入图片描述

    乘法和除法的优先级高于加法和减法,而指数运算(次方)的优先级又高于乘法和除法

    在这里插入图片描述

    ,end = "" #不换行
    
    • 1

    在这里插入图片描述

    \t #对齐
    
    • 1

    在这里插入图片描述

    案例:九九乘法表:
    在这里插入图片描述
    在这里插入图片描述
    九九乘法表中用print()作回车键,用的位置是在内层循环外面

    for循环: 遍历循环
    range(num)
    range(5) : [0,1,2,3,4]

    range(num1,num2)
    range(3,5) : [3,4]

    range(num1,num2,step) #step默认为1,数字步长
    range(1,7,2) : [1,3,5]

    for 临时变量 in 待处理数据集:
    循环条件满足时执行代码

    continue和break关键字:

    在这里插入图片描述

    函数

    在这里插入图片描述

    在这里插入图片描述

    def add(x,y):
        result = x + y
        print(f"{x} + {y}的结果是:{result}")
    add(random.randint(1,100),random.randint(1,100))
    
    • 1
    • 2
    • 3
    • 4
    #以天为单位生成随机数并在每天早上6点产生新值
    import random  
    import time  
    import datetime  
      
    def daily_random_at_6am():  
        while True:  
            # 获取当前时间  
            current_time = datetime.datetime.now()  
            hour = current_time.hour  
      
            # 只有在早上6点时才生成随机数  
            if hour == 6:  
                # 生成一个0到100的随机数  
                random_num = random.randint(0, 100)  
                print(f"今天的随机数是:{random_num}")  
            else:  
                # 如果不是早上6点,则不执行任何操作,进入下一个循环  
                pass  
      
            # 等待一天再生成下一个随机数  
            time.sleep(86400)  # 86400秒是24小时  
      
    if __name__ == "__main__":  
        daily_random_at_6am()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25

    局部变量和全局变量:
    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    
    #定义全局变量money name
    money = 5000000
    name = None
    #要求客户输入姓名
    name = input("请输入您的姓名:")
    #定义查询函数
    def query(show_header):
        if show_header:
            print("-----------查询余额---------------")
        print(f"{name},您好,您的余额剩余:{money}元")
    #定义存款函数
    def save_money(num):
        global money
        money += num
        print("-------------存款-----------------")
        print(f"{name},您好,您存款{num}元成功")
        #调用query函数查询余额
        query(False)
    
    #定义取款函数
    def get_money(num):
        global money
        money -= num
        print("-------------取款-----------------")
        print(f"{name},您好,您取款{num}元成功")
        # 调用query函数查询余额
        query(False)
    
    #定义主菜单函数
    def main():
        print("-----------主菜单---------------")
        print(f"{name},您好,欢迎来到ATM,请操作:")
        print(f"查询余额\t[输入1]")
        print(f"存款\t\t[输入2]")
        print(f"取款\t\t[输入3]")
        print(f"退出\t\t[输入4]")
        return input("请输入您的选择:\n")
    
    
    #设置无限循环,确保程序不退出
    while True:
        keyboard_input =  main()
        if keyboard_input == "1":
            query(True)
            continue #通过continue继续下一次循环,一进来就是主菜单
        elif keyboard_input == "2":
            num = int(input("请输入存款金额:"))
            save_money(num)
            continue
        elif keyboard_input == "3":
            num = int(input("请输入取款金额:"))
            get_money(num)
            continue
        else:
            print("程序退出")
            break
    
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59

    数据容器:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述


    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    序列,切片:
    在这里插入图片描述

    集合:
    在这里插入图片描述

    dirt字典:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    文件打开读取关闭:
    在这里插入图片描述

    异常捕获:
    在这里插入图片描述

    dumps和loads:在这里插入图片描述

    JSON格式的字符串需要在普通格式字符串外加单引号,在JSON中,键和字符串值必须用双引号(")包围,而不是单引号(')。
    在这里插入图片描述

    from pyecharts.charts import Map
    from pyecharts.options import VisualMapOpts
    line = Line()                   #创建一个折线图对象
    line.set_global_opts()			#全局配置
    line.render() 					#render方法将代码生成图像
    
    • 1
    • 2
    • 3
    • 4
    • 5
    #折线图开发
    import json
    from pyecharts.charts import Line
    from pyecharts.options import TitleOpts, LegendOpts,ToolboxOpts,VisualMapOpts,LabelOpts
    
    #处理数据
    o = open("D:/111.txt",encoding="utf-8")
    #读取数据
    reado = o.read()
    print(reado)
    print("----------#去掉不规范json-------------------------")
    #去掉不合json规范的开头
    reado = reado.replace("ahoduhadnhn(","")
    #去掉不佳而json规范的接吻
    reado = reado[:-2]
    print(reado)
    #json转python字典
    
    print("-----------------#json转python字典-----------------")
    reado_dict = json.loads(reado)
    print(type(reado_dict))
    print(reado_dict)
    
    #获取trend key
    print("-----------#获取trend key--------------------")
    data_trend = reado_dict["data"][0]["trend"]
    #该语句意思是先获取reado_dict中"data"键的值的第一个元素(一个字典)(只有一个元素),然后再获取该字典中"trend"键对应的值
    #reado_dict中"data"键的值(是字典)的第一个元素是:{'name': '中国', 'trend': {'uptadedate': ['2.21', '2.22', '2.23']}}
    #因为第一个元素又是字典所以直接加["trend"]获取"trend"键的值(值又是字典,可以直接再连键获取第x元素)
    print(type(data_trend))
    print(f"data_trend的值为{data_trend}")
    
    #示例直接获取2.22
    data_trend1 = reado_dict["data"][0]["trend"]["uptatedate"][1]
    print(data_trend1)
    
    #获取日期数据,用于x轴,
    print("------------#获取日期数据,基于data_trend用于x轴,--------------------------")
    x_data = data_trend["uptatedate"][:2]
    print(x_data)
    x_data = data_trend["uptatedate"][2]
    print(x_data)
    
    print("------------#获取日期数据,基于data_trend用于y轴,--------------------------")
    #获取确认数据,用于y轴
    y_data = data_trend["list"]["date"]
    print(y_data)
    
    #生成图表
    line = Line()   #构建折线图对象
    line.add_xaxis(x_data) #x轴共用
    #line.add_yaxis(y_data,y_data)
    line.add_yaxis("中国",y_data,label_opts=LabelOpts(is_show=False))
    line.add_yaxis("美国",y_data,label_opts=LabelOpts(is_show=False))
    
    
    #设置全局选项
    line.set_global_opts(
        title_opts=TitleOpts(title="2022中美对比",pos_left="center",pos_bottom="1%")
    )
    
    #调用render生成图表
    line.render()
    #关闭文件对象
    o.close()
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66


    在这里插入图片描述

    Python读取文件数据写入到数据库中,并反向从数据库读取保存到本地

    原文链接:https://blog.csdn.net/weixin_57805858/article/details/130559008

    ====================================================================
    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    (Spark实战)笔记

    原文链接:https://blog.csdn.net/m0_63272315/article/details/130093730

  • 相关阅读:
    springboot vue婚纱摄影师作品展示网站系统javaweb项目
    函数以及变量
    免费录音转文字的软件有哪些?不知道的小伙伴快来码住
    Ruby 里表的增删改查
    Python数据分析-笔记01
    私家车位上海商学院
    如何使用 CommonsRequestLoggingFilter 在 Spring 引导中跟踪 HTTP 请求
    做网赚的核心是:流量思维+变现思维
    Centos 安装 Docker
    ExtJS 教程汇总
  • 原文地址:https://blog.csdn.net/qq_37257431/article/details/133561413