爆款云主机2核4G限时秒杀,88元/年起!
查看详情

活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 618智算钜惠季 爆款云主机2核4G限时秒杀,88元/年起!
  • 免费体验DeepSeek,上天翼云息壤 NEW 新老用户均可免费体验2500万Tokens,限时两周
  • 云上钜惠 HOT 爆款云主机全场特惠,更有万元锦鲤券等你来领!
  • 算力套餐 HOT 让算力触手可及
  • 天翼云脑AOne NEW 连接、保护、办公,All-in-One!
  • 中小企业应用上云专场 产品组合下单即享折上9折起,助力企业快速上云
  • 息壤高校钜惠活动 NEW 天翼云息壤杯高校AI大赛,数款产品享受线上订购超值特惠
  • 天翼云电脑专场 HOT 移动办公新选择,爆款4核8G畅享1年3.5折起,快来抢购!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

智算服务

打造统一的产品能力,实现算网调度、训练推理、技术架构、资源管理一体化智算服务
智算云(DeepSeek专区)
科研助手
  • 算力商城
  • 应用商城
  • 开发机
  • 并行计算
算力互联调度平台
  • 应用市场
  • 算力市场
  • 算力调度推荐
一站式智算服务平台
  • 模型广场
  • 体验中心
  • 服务接入
智算一体机
  • 智算一体机
大模型
  • DeepSeek-R1-昇腾版(671B)
  • DeepSeek-R1-英伟达版(671B)
  • DeepSeek-V3-昇腾版(671B)
  • DeepSeek-R1-Distill-Llama-70B
  • DeepSeek-R1-Distill-Qwen-32B
  • Qwen2-72B-Instruct
  • StableDiffusion-V2.1
  • TeleChat-12B

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场创新解决方案
办公协同
  • WPS云文档
  • 安全邮箱
  • EMM手机管家
  • 智能商业平台
财务管理
  • 工资条
  • 税务风控云
企业应用
  • 翼信息化运维服务
  • 翼视频云归档解决方案
工业能源
  • 智慧工厂_生产流程管理解决方案
  • 智慧工地
建站工具
  • SSL证书
  • 新域名服务
网络工具
  • 翼云加速
灾备迁移
  • 云管家2.0
  • 翼备份
资源管理
  • 全栈混合云敏捷版(软件)
  • 全栈混合云敏捷版(一体机)
行业应用
  • 翼电子教室
  • 翼智慧显示一体化解决方案

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
  • 天翼云EasyCoding平台
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼云东升计划
  • 适配中心
  • 东升计划
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
开放能力
  • EasyCoding敏捷开发平台
培训与认证
  • 天翼云学堂
  • 天翼云认证
魔乐社区
  • 魔乐社区

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 建议与反馈
  • 用户体验官
  • 服务保障
  • 客户公告
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 智算服务
  • 产品
  • 解决方案
  • 应用商城
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心

      pandas,polars,pyspark的df对象常见用法对比

      首页 知识中心 大数据 文章详情页

      pandas,polars,pyspark的df对象常见用法对比

      2024-10-24 07:45:52 阅读次数:30

      pandas,python,数据分析

      案例背景

      最近上班需要处理的都是百万,千万级的数据,pandas的性能已经不够看了(虽然它在处理数据上是真的很好用),公司都是用的polar和pyspark,我最近也学习了一些,然后写篇文章对比一下他们的常见用法。虽然他们都有数据框dataframe这个数据结构,但是具体用法还是有很多差异的。


      数据选取

      都是做数据分析的,那么就用最简单的机器学习数据集波士顿房价数据集吧,演示以下常见的数据处理的用法。,然后画个图,简单机器学习一下。

      pyspark自己电脑装了也用不了,要分布式的虚拟机。。我这里spark都是用公司环境跑的。和pd和pl本地跑的不一样。


      代码实现

      我这里就用data1表示pandas的数据结构,data2表示polar数据结构。data3表示pyspark 的数据结构。3个数据结构的相同功能都用各种对应的语法展示。(data3用的不是波士顿房价的数据,是随便从公司sql里面找的一个数据....)

      导入包:

      import numpy as np
      import pandas as pd
      import polars as pl
      import matplotlib.pyplot as plt 
      import seaborn as sns
      
      plt.rcParams ['font.sans-serif'] ='SimHei'               #显示中文
      plt.rcParams ['axes.unicode_minus']=False               #显示负号

      数据读取

      首先是pandas的

      data1=pd.read_excel('Boston.xlsx')
      data1.head(2)

      pandas,polars,pyspark的df对象常见用法对比

      这个其实polar差不多:

      data2=pl.read_excel('Boston.xlsx')  #要装一个什么csv2xlsx的包
      data2.head(2)

      pandas,polars,pyspark的df对象常见用法对比

       

      pyspark也差不多,但是我读不了本地数据....一直路径不对,可能公司虚拟机里面的的pyspark 的环境不一样。

      #df = spark.read.csv("path/to/csv/file.csv", header=True, inferSchema=True)

      一般来说你都用pyspark了,肯定不会从本地csv读取数据,一般都是直接从sql里面掏:

      pandas,polars,pyspark的df对象常见用法对比

      pyspark里面的.head()是只展示一行数据。

      一般他们都是这样show()

      pandas,polars,pyspark的df对象常见用法对比

      敏感信息打了个码。

       


      写入文件

      #data1.to_csv(filepath)
      #data2.write_csv(filepath)
      #data3.write.csv(filepath,header=True)

      这里就没运行了,但是是可用的,语法差不多。


      查看数据基本信息

      pandas很方便的info就行

      ()

       pandas,polars,pyspark的df对象常见用法对比

      polar里面具有没有这个方法,见鬼,我只找到一个差不多的:
       

      data2.schema

      pandas,polars,pyspark的df对象常见用法对比

      这个只有数据类别,没得非空值什么的信息,差评。

      pyspark是这样的:

      data3.printSchema()

      pandas,polars,pyspark的df对象常见用法对比

       

      其他的类型,变量名,数据形状,都是差不多:

      print(data1.dtypes) ;print(data2.dtypes)  #类型
      print(data1.shape)  ;print(data2.shape)   #形状
      print(data1.columns);print(data2.columns) #列名称

      pandas,polars,pyspark的df对象常见用法对比

      pyspark是这样的:

      print(data3.dtypes)
      print((data3.count(), len(data3.columns)))
      print(data3.columns)

      pandas,polars,pyspark的df对象常见用法对比


       

      描述性统计

      这是也是一样的,都是data.describe()就行

      data1.describe()

       pandas,polars,pyspark的df对象常见用法对比

      data2.describe()

      pandas,polars,pyspark的df对象常见用法对比

      pyspark是这样的

      data3.describe().show()

      pandas,polars,pyspark的df对象常见用法对比

       


      查看缺失值和填充

      pandas 的我很熟悉

      print(data1.isnull().sum())
      data1.fillna('2')

      pandas,polars,pyspark的df对象常见用法对比

      polars有些变化

      print(data2.null_count())
      data2.fill_null('2')

      pandas,polars,pyspark的df对象常见用法对比

      ps:polars填充了然后想覆盖掉原来的列还很麻烦,大概这样:

      pdf_global_dev1.with_columns(pdf_global_dev1['col_name'].fill_null(0).alias('col_name'))
      

       

       

      pyspark贼复杂

      from pyspark.sql.functions import col, sum,expr,split,substring,when
      data3.agg(*[sum(col(c).isNull().cast("int")).alias(c) for c in data3.columns]).show()
      # 显示每列的缺失值数量

      pandas,polars,pyspark的df对象常见用法对比

      填充倒是一样的

      data3.fillna(2)

       


      数据切片

      我觉得pandas 的数据切片真的很厉害,很逻辑完善。

      data1.loc[10:15,['CRIM','ZN']]

      pandas,polars,pyspark的df对象常见用法对比

      polars还没怎么用熟,不好评价

      data2.slice(10, 5).select(['CRIM', 'ZN'])   ##10是开始,5是行数

      pandas,polars,pyspark的df对象常见用法对比

      这里就得提一下了,polars没有索引这个东西,所以他的切片是用开始的位置和长度来穿入参数的。太离谱了,pandas的多层索引简直是诺贝尔奖发现好不好,polars居然没得索引这个东西,虽然简化一些东西,但是很多功能都丢失了。

       

      pyspark就更加离谱了,还需要加个辅助列表示行数才能切片。。。

      from pyspark.sql.functions import monotonically_increasing_id
      df_with_row_index = data3.withColumn("row_index", monotonically_increasing_id())  #新增辅助列
      # 切片操作
      df_with_row_index.filter((col("row_index") >= 10) & (col("row_index") <= 15)).drop("row_index").select("age", "gender").show()

      pandas,polars,pyspark的df对象常见用法对比

      可能pyspark这种对大数据处理的只会动列,不会动行,也就没得行索引这个东西,连切片都没对应的方法。

       


      数据筛选

      语法差不多,各有优缺点吧

      pandas

      data1[data1['MEDV'] >49.9 ]

       polars

      data2.filter(data2['MEDV'] >49.9)

      pyspark

      data3.filter(data3.age>90).show()

       

      选两列数据

      data1[['NOX', 'RAD']]
      data2.select(['NOX', 'RAD'])
      data3.select("age", "gender")

      数据合并

      pandas 的方法太多了:

      data1.merge(pd.Series(np.random.randint(0, 10, size=len(data1)),name='new'),left_index=True, right_index=True)
      ## 还可以pd.concat([]),还可以直接data1['new']=

      pandas,polars,pyspark的df对象常见用法对比

      polars这个名称是真离谱啊,合并了之后名称不知道怎么给,只能重命名

      ##### 也是新增一列的用法
      data2.with_columns(pl.Series('new1',np.random.randint(0, 10, size=len(data1)))).rename({'new1':'new'})

       

      pandas,polars,pyspark的df对象常见用法对比

       pyspark就是这样子加一列。

      data3_with_new = data3.withColumn("new", expr("rand() * 10"))  # 使用rand()函数生成随机数列
      

       

       


      分组聚合

      分组聚合麻烦起来很麻烦,可以写得超级复杂,咱们就简单求和试试

      pandas:

      data1.groupby('RAD').sum()

      pandas,polars,pyspark的df对象常见用法对比

       polars差不多

      data2.groupby('RAD').sum()

      pandas,polars,pyspark的df对象常见用法对比

      pyspark的

      data3.groupBy('family_role_code').count().show()

      pandas,polars,pyspark的df对象常见用法对比

       


      删除缺失值

      数据是没缺失值的,就随便演示一下了

      #data1.dropna()
      data2.drop_nulls()

      pandas,polars,pyspark的df对象常见用法对比

      spark和pandas一样

      data3.dropna()

       


      数据排序

      pandas长一些

      data1.sort_values(['MEDV','B'],ascending=False)

      polars短一点,且参数名称可能有点不一样

      data2.sort(by=['MEDV', 'B'],descending=True)

      pandas,polars,pyspark的df对象常见用法对比

      data3.orderBy([data3.age,data3.nik_num],ascending=False).show(5)

      pandas,polars,pyspark的df对象常见用法对比

       


      列名称重命名

      panadas除了rename,其实还有很多方法的。

      data1.rename(columns={'MEDV':'y'})

      pandas,polars,pyspark的df对象常见用法对比

      polars也有rename,但是不能传入columns,而且他也有很多别的方法

      #data2.select(pl.col('MEDV').alias('10Medv'))  #挑选一行数据出来重命名
      data2.select([ pl.col('NOX').alias('no'),
          pl.col('RAD').alias('yes')])   #挑选2行数据出来重命名
      data2.rename({'MEDV':'y'})  #没索引这个概念,所以就不用传入形参

      spark就是这样的:

      data3.withColumnRenamed('kk','户口号')

       


      应用函数

      简单的函数应该是差不多的,复杂的可以有区别,但是后面遇到再说

      data1['DIS'].apply(lambda x:str(x).split('.')[0])

      pandas,polars,pyspark的df对象常见用法对比

      data2['DIS'].apply(lambda x:str(x).split('.')[0])

       pandas,polars,pyspark的df对象常见用法对比

      添加一个是否包含的虚拟变量:

      pdf_global_dev1= pdf_global_dev1.with_columns(
              pl.col('rulelist').map_elements(lambda x : '1' if rule in x else '0', return_dtype=pl.Utf8).alias(f'{rule}').fill_null(0))

      数值型就是这样的:

      for rule in set_kind:
          # 对每一条规则,创建一个新列,如果规则在'rulelist'列中,则该列值为1,否则为0
          df_cust1 = df_cust1.with_column(
              pl.col('rulelist').apply(lambda x : 1 if rule in x else 0, return_dtype=pl.Int64).alias(f'{rule}')
          )

       

      我顺便验证一下pyspark切换数据类型的语法,多写了几个方法函数:

      这个是年龄变成字符串切片整数

      data3.withColumn("age_int", split(col("age").cast("string"), "\\.").getItem(0)).show(10)   # 取age 的整数
      

      pandas,polars,pyspark的df对象常见用法对比

       

      这是将年龄和nik_num变成整型数

      data3=data3.withColumn("age", col("age").cast("integer"))#.show()
      data3=data3.withColumn("nik_num", col("nik_num").cast("integer"))
      data3.show()
      

      pandas,polars,pyspark的df对象常见用法对比

       

      这是将户口本变成数值型数据然后+4

      data3.withColumn("kk_new", col("kk").cast("double") + 4).show(8)              # 转为数值然后+1
      

      pandas,polars,pyspark的df对象常见用法对比

       

      这是 将身份证里面的2-4位切片出来(spark居然是从1开始,不是0开始,我人晕了)

      data3.withColumn("nik_shi", substring(col("nik").cast("string"), 3, 2)).show()      #
      

      pandas,polars,pyspark的df对象常见用法对比

       


      连接数据

      pandas里面主要是merge函数

      polars更像sql里面用join

      #data1.merge(data11, on='key')
      #data2.join(data22, on='key')
      #data3.join(data3_with_new, data3["kk"] == data3_with_new["kk"])    
      #pyspark一般用法:   #df1.join(df2, df1['col'] == df2['col'])

      删除某一列数据

      两个一模一样

      data1.drop(columns=['MEDV'])
      data2.drop(columns=['MEDV'])

      pyspark可以不用传入形参,我先增加一列,然后删除一列。

      data3.withColumn('newColumn',F.lit('new')).drop('newColumn')
      

       相互转化

      polars数据结构也可以变成pandas和numpy的

      import pyarrow as pa
      data2.to_pandas()  #需要安装pyarrow
      #data2.to_numpy()  #也可以直接运行
      data3.toPandas()

      pyspark变不成numpy,但变成了pandas再变numpy也是一样的。 


      链式法则

      弄个复杂一点的代码段吧,来对比他们的区别

      pandas的

      (data1.assign(sum_B=data1['B'].sum())  # 求和的
          .assign(sorted_MEDV=data1['MEDV'].sort_values())  # 排序的
          .assign(first_name=data1['RAD'].iloc[0])  # 第一个
          .assign(Medv=data1['MEDV'].mean() * 10)  # 10倍
      )[['sum_B','sorted_MEDV','first_name','Medv']].sort_values('sorted_MEDV')

      pandas,polars,pyspark的df对象常见用法对比

      polars 的:
       

      data2.select(
          pl.sum('B'),  #求和的
          pl.col('MEDV').sort(),  #排序的
          pl.col('RAD').first().alias('first name'),  #第一个
          (pl.mean('MEDV')*10).alias('10Medv'),   #10倍
      )

      pandas,polars,pyspark的df对象常见用法对比

      spark就不写了,报错弄了半天也不知道为什么。。


      数量统计

      panadas我最常用的就是value_counts()的方法了吧,很方便统计一列数据每个出现的次数。

      data1['RAD'].value_counts()

      polars好像也一样

      pyspark的对应:
       

      #grouped_df['kk_ucnt'].value_counts()。  pandas方法
      (grouped_df.groupBy('kk_ucnt')
                        .count()
                        .orderBy(F.col('count').desc()))
      # grouped_df.groupby('nik_ucnt')['kk_ucnt'].value_counts().unstack()
      result_df = (grouped_df.groupBy('nik_ucnt')
                   .pivot('kk_ucnt')
                   .count()  # 计算每个组合的次数
                   .na.fill(0)  # 将空值填充为0,相当于unstack后的fillna(0)
                   .orderBy('nik_ucnt'))
      

       

       


      画图

      pandas 的对象可以直接.plot画图的,也可以plt画图,我发现polars对象也能直接plt画图,还不错。

      plt.figure(figsize=(3,2))
      data1['MEDV'].plot.box() # 只有padnas对象可以这样这个方法
      #plt.boxplot(data1['MEDV']) #正常的plt画图
      plt.boxplot(data2['MEDV'])   #pl数据也能用plt画图
      plt.show()

      pandas,polars,pyspark的df对象常见用法对比

      spark没得直接画图的方法,也是变成了pandas才能画图

      plt.figure(figsize=(3,2))
      plt.boxplot(data3.select(['age']).toPandas())   #sparkde 数据只能转为pd才能画图
      plt.show()
      

       


      机器学习 

      我们直接把polars数据结构扔到sklearn库里面去

      from sklearn.model_selection import train_test_split
      from sklearn.linear_model import LinearRegression
      from sklearn.ensemble import RandomForestRegressor
      X = data2.drop(columns=['MEDV'])
      y = data2['MEDV']
      # 划分训练集和测试集
      X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)

      线性回归:

      # 线性回归
      model =  LinearRegression()
      model.fit(X_train, y_train)
      model.score(X_test, y_test)

      pandas,polars,pyspark的df对象常见用法对比

      随机森林回归

      # 随机森林
      model =  RandomForestRegressor()
      model.fit(X_train, y_train)
      model.score(X_test, y_test)

       pandas,polars,pyspark的df对象常见用法对比

      居然是和pandas一模一样的数据结果,还不错。

       

      pyspark那差别就大了:

      我们先转化数据都变成数值型:

      data3=data3.withColumn("kk", col("kk").cast("double")).withColumn("nik", col("nik").cast("double"))
      data3=data3.withColumn("family_role_code", col("family_role_code").cast("integer")) 
      data4=data3.withColumn("gender", when(col("gender") == "F", 1).otherwise(0))
      data4.groupBy("gender").count().show()
      
      
      data4.agg(*[sum(col(c).isNull().cast("int")).alias(c) for c in data4.columns]).show()
      

       确定没缺失值后,进行机器学习:也是随机森林

      
      
      from pyspark.ml.feature import StringIndexer, VectorAssembler
      from pyspark.ml.classification import RandomForestClassifier
      from pyspark.ml.evaluation import MulticlassClassificationEvaluator
      
      # 创建SparkSession对象
      spark = SparkSession.builder.getOrCreate()
      label_indexer = StringIndexer(inputCol="gender", outputCol="label")
      data4=data4.na.drop()
      # 特征向量转换器
      feature_columns = data4.columns
      feature_columns.remove('gender') 
      feature_assembler = VectorAssembler(inputCols=feature_columns, outputCol="features")
      
      # 随机森林分类器
      rf = RandomForestClassifier(featuresCol="features", labelCol="label")
      
      # 构建Pipeline
      from pyspark.ml import Pipeline
      pipeline = Pipeline(stages=[label_indexer, feature_assembler, rf])
      
      # 拆训练集和测试集
      train_data, test_data = data4.randomSplit([0.7, 0.3], seed=123)
      
      # 训练模型
      model = pipeline.fit(train_data)
      predictions = model.transform(test_data)
      evaluator = MulticlassClassificationEvaluator(labelCol="label", predictionCol="prediction", metricName="accuracy")
      accuracy = evaluator.evaluate(predictions)
      print("准确率:", accuracy)
      

      pandas,polars,pyspark的df对象常见用法对比

      哇贼复杂,要变形编码数据后构建管道,感觉不好用。。不是数据量大到上千w我是不会想用这个来机器学习的。。。sklearn才是真神。


      总结

      感觉上来说,pandas和polars最大差异在于polars没得索引这个东西,并且很多  新增列,条件筛选,切片等等是存在一定的差异的,相似地方也有一些。最让我惊喜的是plt和sklearn可以完美兼容polars的数据结构,那就真的很不错了。

      pyspark有的位置和pandas很像,但是有的位置又和他们差太远了,要用好这个东西还是得多练多写。


      版权声明:本文内容来自第三方投稿或授权转载,原文地址:https://blog.csdn.net/weixin_46277779/article/details/137345385,作者:阡之尘埃,版权归原作者所有。本网站转在其作品的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如因作品内容、版权等问题需要同本网站联系,请发邮件至ctyunbbs@chinatelecom.cn沟通。

      上一篇:扩展欧几里得算法乘法逆元

      下一篇:LVS 调度算法详解

      相关文章

      2025-05-06 09:19:30

      【30天玩转python】数据分析与可视化

      数据分析是通过数据提取、整理和分析来发现有用信息的过程,而数据可视化则通过图形和图表的方式,将数据转化为视觉化信息,以便快速理解数据趋势和模式。

      2025-05-06 09:19:30
      可视化 , 数据 , 数据分析 , 数组
      2025-05-06 09:18:38

      【大数据分析工具】使用Hadoop、Spark进行大数据分析

      在当今数据驱动的世界中,处理和分析大规模数据已经成为许多企业和研究机构的核心需求。Hadoop和Spark作为大数据处理的两大主流框架,提供了强大的分布式计算能力,帮助用户在海量数据中提取有价值的信息。

      2025-05-06 09:18:38
      Hadoop , MapReduce , Spark , 数据 , 数据分析
      2025-04-14 09:24:23

      python打印宝塔代码

      python打印宝塔代码

      2025-04-14 09:24:23
      python
      2025-04-09 09:16:56

      python四种抽样方法的使用:随机抽样、聚类抽样、系统抽样、分层抽样

      python四种抽样方法的使用:随机抽样、聚类抽样、系统抽样、分层抽样

      2025-04-09 09:16:56
      python , 代码 , 方法 , 机器学习 , 示例
      2025-04-09 09:16:42

      视频 | Python测试开发之调试print代码实例

      视频 | Python测试开发之调试print代码实例

      2025-04-09 09:16:42
      debug , log4j , logback , logging , python
      2025-04-09 09:16:42

      python简单介绍及基础知识(一)

      编程语言,是用来实现某种功能的编写给计算机读取和执行的语言

      2025-04-09 09:16:42
      print , python , 下划线 , 变量 , 变量名 , 编程语言 , 语言
      2025-04-09 09:16:00

      使用Python扩展PAM(part 2)

      在上篇part1 中编译的pam_python.so可以用Python代码进行一些额外的验证操作。动态密码,虚拟账号,都是可行的,只要编写的python鉴权脚本符合相应的PAM规范即可使用。

      2025-04-09 09:16:00
      python , 使用 , 密码 , 配置
      2025-04-09 09:13:27

      1行Python代码,把Excel转成PDF,python-office功能更新~

      1行Python代码,把Excel转成PDF,python-office功能更新~

      2025-04-09 09:13:27
      Excel , pdf , python , 代码 , 程序员
      2025-04-09 09:13:17

      python性能测试之pyperformance

      python性能测试之pyperformance

      2025-04-09 09:13:17
      json , python , Python , 性能 , 文档 , 测试
      2025-04-09 09:13:17

      IronPython 与 c# 交互之导入Python模块的两种方法

      当我们要在C#中调用python时,有时候需要用到python里的一些函数,比如进行一些数学运算,开方,取对数,这个时候我们需要用到python里的math模块(类似C#的命名空间,但概念不完全一样).

      2025-04-09 09:13:17
      python , 函数 , 导入 , 方法 , 模块
      查看更多
      推荐标签

      作者介绍

      天翼云小翼
      天翼云用户

      文章

      33561

      阅读量

      5246547

      查看更多

      最新文章

      【30天玩转python】数据分析与可视化

      2025-05-06 09:19:30

      【大数据分析工具】使用Hadoop、Spark进行大数据分析

      2025-05-06 09:18:38

      如何求模平方根?

      2025-04-01 10:28:48

      课程介绍,基础—环境安装、判断、循环语句等(爬虫及数据可视化)

      2025-03-21 06:57:11

      大数据技术栈简要介绍

      2024-12-13 06:53:39

      【Flask项目2】python对象分页数据序列化基类(5)

      2024-11-22 08:11:22

      查看更多

      热门文章

      5、使用PyTorch 实现线性回归

      2023-02-27 09:14:47

      python使用numpy保存字典格式的数据

      2023-04-17 10:55:24

      pandas Dataframe读取数据表是自定义列名

      2023-04-19 09:36:36

      利用函数求出一个数组最大三个数的乘积

      2023-02-13 08:10:07

      猜字母问题

      2023-02-24 08:30:41

      Django返回json数据

      2023-02-20 10:30:04

      查看更多

      热门标签

      算法 leetcode python 数据 java 数组 节点 大数据 i++ 链表 golang c++ 排序 django 数据类型
      查看更多

      相关产品

      弹性云主机

      随时自助获取、弹性伸缩的云服务器资源

      天翼云电脑(公众版)

      便捷、安全、高效的云电脑服务

      对象存储

      高品质、低成本的云上存储服务

      云硬盘

      为云上计算资源提供持久性块存储

      查看更多

      随机文章

      约瑟夫问题

      决策树算法api

      权限表管理之删除权限表数据

      python实现json/字典数据中所有key路径拼接组合

      解决pyechart绘图时使用DataZoomOpts导致时间从1970-01-01开始

      二进制中1的个数

      • 7*24小时售后
      • 无忧退款
      • 免费备案
      • 专家服务
      售前咨询热线
      400-810-9889转1
      关注天翼云
      • 旗舰店
      • 天翼云APP
      • 天翼云微信公众号
      服务与支持
      • 备案中心
      • 售前咨询
      • 智能客服
      • 自助服务
      • 工单管理
      • 客户公告
      • 涉诈举报
      账户管理
      • 管理中心
      • 订单管理
      • 余额管理
      • 发票管理
      • 充值汇款
      • 续费管理
      快速入口
      • 天翼云旗舰店
      • 文档中心
      • 最新活动
      • 免费试用
      • 信任中心
      • 天翼云学堂
      云网生态
      • 甄选商城
      • 渠道合作
      • 云市场合作
      了解天翼云
      • 关于天翼云
      • 天翼云APP
      • 服务案例
      • 新闻资讯
      • 联系我们
      热门产品
      • 云电脑
      • 弹性云主机
      • 云电脑政企版
      • 天翼云手机
      • 云数据库
      • 对象存储
      • 云硬盘
      • Web应用防火墙
      • 服务器安全卫士
      • CDN加速
      热门推荐
      • 云服务备份
      • 边缘安全加速平台
      • 全站加速
      • 安全加速
      • 云服务器
      • 云主机
      • 智能边缘云
      • 应用编排服务
      • 微服务引擎
      • 共享流量包
      更多推荐
      • web应用防火墙
      • 密钥管理
      • 等保咨询
      • 安全专区
      • 应用运维管理
      • 云日志服务
      • 文档数据库服务
      • 云搜索服务
      • 数据湖探索
      • 数据仓库服务
      友情链接
      • 中国电信集团
      • 189邮箱
      • 天翼企业云盘
      • 天翼云盘
      ©2025 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
      公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
      • 用户协议
      • 隐私政策
      • 个人信息保护
      • 法律声明
      备案 京公网安备11010802043424号 京ICP备 2021034386号