Python数据攻略-Pandas的数据创建与基础特性

news2024/11/23 19:01:20

大家好,我是Mr数据杨!今天将进入Python的Pandas数据世界,就像三国演义中的英雄们,用聪明才智塑造自己的命运。

记得三国中,周瑜曾利用兵法巧妙策划火烧赤壁,击败曹军。这就像创建一个Pandas DataFrame,用不同的方式把数据装入的数据库。周瑜可以用兵书(Dict)、军士(List)、武器(NumPy 数组)来部署军队,同样也可以从各种文件中读取和写入数据,包括HTML、SQL,甚至是压缩和解压缩文件。

再看诸葛亮,他的能力在于洞察一切,通过掌握索引和数据,诸葛亮能从混乱的军情中快速找到需要的信息,就像Pandas中的索引检索,可以快速定位到数据。他对每个将士的武艺、品性都了如指掌,这就像Pandas中的数据类型,每种数据都有其特殊的属性和行为。

在构建赤壁战局的过程中,周瑜和诸葛亮都需要理解他们的军队规模,正如我们需要知道DataFrame的大小。这个大小不仅决定了他们的战略和战术,也决定了Python如何有效地处理和存储数据。

所以,这个世界,既是Python和Pandas的世界,也是我们三国英雄们的世界,都充满了策略、数据和智慧。希望大家在这个旅程中找到自己的乐趣和灵感!

文章目录

  • Pandas DataFrame
  • 创建 DataFrame
    • 使用 Dict 创建
    • 使用 List 创建
    • 使用 NumPy 数组创建
    • 文件读取创建
    • 文件的写入方式
    • 文件的读取方式
    • HTML文件操作方式
    • SQL文件方式
    • Pickle 文件方式
    • 压缩和解压缩文件
  • 检索索引和数据
    • 索引作为序列
    • 数据转为 NumPy 数组
    • 数据类型
    • DataFrame 大小

Pandas DataFrame

Pandas DataFrame 是包含以二维、行和列组织的数据、对应于行和列的索引的数据结构。使用字典的方式创建DataFrame。

import pandas as pd

df = pd.read_excel("Romance of the Three Kingdoms 13/人物详情数据.xlsx")
df.head()

在这里插入图片描述
设定条件查询数据的前 N 行或者后 N 行内容。

df.head(2)

在这里插入图片描述

df.tail(2)

在这里插入图片描述

查看某列数据的话直接使用字典取值的方式获取即可。

name = df['名前']
name 

0      阿会喃
1       韋昭
2       伊籍
3       尹賞
4      尹大目
      ... 
852    卑弥呼
853    韓世忠
854    梁紅玉
855     范蠡
856     荀灌
Name: 名前, Length: 857, dtype: object

也可以像获取类实例的属性一样访问该列数据。

df.名前

0      阿会喃
1       韋昭
2       伊籍
3       尹賞
4      尹大目
      ... 
852    卑弥呼
853    韓世忠
854    梁紅玉
855     范蠡
856     荀灌
Name: 名前, Length: 857, dtype: object

Pandas DataFrame 的每一列都是一个 pandas.Series 实例,保存一维数据及其索引的结构。可以像使用字典一样获取对象的单个项目,Series 方法是使用其索引作为键。

name [10]
'袁胤'

可以使用 .loc[] 访问器访问整行数据。

df.loc[10]

在这里插入图片描述
label 对应的行10,其中包含对应行数据之外,还提取了相应列的索引,返回的行也是一个 pandas.Series 实例。

创建 DataFrame

分别使用不同的方式创建DataFrame,创建之前先要导入对应的三方库。

import numpy as np
import pandas as pd

使用 Dict 创建

data = {'x': [1, 2, 3], 'y': np.array([2, 4, 8]), 'z': 100}
pd.DataFrame(data)

   x  y    z
0  1  2  100
1  2  4  100
2  3  8  100

可以用 columns参数控制列的顺序,用index控制行索引的顺序。

pd.DataFrame(d, index=[100, 200, 300], columns=['z', 'y', 'x'])
       z  y  x
100  100  2  1
200  100  4  2
300  100  8  3

使用 List 创建

字典键是列索引,字典值是 DataFrame 中的数据值。

l = [{'x': 1, 'y': 2, 'z': 100},
     {'x': 2, 'y': 4, 'z': 100},
     {'x': 3, 'y': 8, 'z': 100}]

pd.DataFrame(l)
   x  y    z
0  1  2  100
1  2  4  100
2  3  8  100

还可以使用嵌套列表或列表列表作为数据值,并且创建时需要指明行、列索引。元组和列表创建的方式相同

l = [[1, 2, 100],
     [2, 4, 100],
     [3, 8, 100]]

pd.DataFrame(l, columns=['x', 'y', 'z'])
   x  y    z
0  1  2  100
1  2  4  100
2  3  8  100

使用 NumPy 数组创建

arr = np.array([[1, 2, 100],
                [2, 4, 100],
                [3, 8, 100]])

df_ = pd.DataFrame(arr, columns=['x', 'y', 'z'])
df_
   x  y    z
0  1  2  100
1  2  4  100
2  3  8  100

文件读取创建

可以在多种文件类型(包括 CSV、Excel、SQL、JSON 等)中保存和加载Pandas DataFrame 中的数据和索引。

我们将使用《三國志 13》的人物数据作为示例,数据存储在Excel文件中(人物详情数据.xlsx),具体列的说明如下:

  • 基本信息列:名前、字、読み、性別、生年、登場、没年、寿命、死因、父親、母親、相性、列伝。
  • 内政能力列:商業、農業、文化、訓練、巡察、説破、交渉、弁舌、人徳。
  • 军事能力列:威風、神速、奮戦、連戦、攻城、兵器、堅守、水連、一騎、豪傑、鬼謀。
  • 其他信息列:音声、武器、性格、義理、勇愛、才愛、分類、武具興味、書物興味、宝物興味、酒興味、物欲。

在这里插入图片描述

先将生成的数据保存到不同的文件中。

import pandas as pd

data = {'名前': ['阿会喃', '韋昭', '伊籍', '尹賞', '尹大目'],
 '字': ['-', '弘嗣', '機伯', '-', '-'],
 '読み': ['-', 'コウシ', 'キハク', '-', '-'],
 '性別': ['男', '男', '男', '男', '男'],
 '生年': [190, 204, 162, 194, 211],
 '登場': [217, 223, 189, 213, 230],
 '没年': [225, 273, 226, 260, 270],
 '寿命': [36, 70, 65, 67, 60],
 '死因': ['不自然死', '不自然死', '自然死', '自然死', '自然死'],
 '父親': ['-', '-', '-', '-', '-'],
 '母親': ['-', '-', '-', '-', '-'],
 '相性': ['62', '131', '77', '72', '38'],
 '列伝': ['孟獲の配下。第三洞の元帥。\n【演義】諸葛亮の南蛮征圧で、張翼に襲撃されて捕らえられる。董荼那ともども、諸葛亮に解放されて心服するが、同じく解放されながらも服従しない孟獲の命で沙口の守備に派遣される。次の戦いで馬岱との対戦を避けた董荼那が孟獲に処罰されると、董荼那と結託して孟獲を捕らえ蜀軍に引き渡した。その後、再び釈放された孟獲が諸葛亮に心服したものと誤解し、孟獲に誘い出されて董荼那と共に殺された。\n【正史】記述なし。',
  '呉の幕僚。正史では、司馬昭の名を避けて、韋曜と記される。\n【演義】記述なし。\n【正史】太子・孫和の命で「博奕論」を著し、博奕(すごろく)が益体のない遊びだと論じた。孫亮が即位すると諸葛恪に推薦され、薛瑩、華覈らと共に「呉書」の編集に当たる。しかし、孫晧が即位すると「呉書」の編集方針を巡って孫晧と対立。下戸だったがむりやり酒を飲まされ、態度が反抗的だとして処刑された。華覈とは親交が篤く、華覈は最後まで韋昭の助命嘆願に奔走した。',
  '劉表の幕僚。後に劉備に仕える。\n【演義】劉表が劉備から贈られた的盧を返した時、的盧の凶相が乗り手に祟るという逸話を劉備に伝える。蔡瑁が劉備暗殺を測った時は劉備に危機を伝え逃亡させた。劉表が死に、後を継いだ劉琮が早々に降伏すると、劉備に仕え関羽と共に荊州を守る。荊州が呂蒙の攻撃を受けると馬良と共に救援要請のため成都に向かい、関羽が死ぬと成都に残った。その後、劉備に皇帝になるよう勧めた。\n【正史】使者としての機知、応対を孫権に感心された。諸葛亮、法正、劉巴、李厳らと蜀科(蜀の法律)を作った。',
  '天水の武将。魏に仕えた後、蜀に降る。\n【演義】姜維の友人。諸葛亮が天水を攻めた時、先に蜀に降伏していた姜維と連絡を取り合う。蜀軍が攻め寄せると同僚の梁緒と謀って城門を開き、蜀軍を招き入れた。\n【正史】諸葛亮が天水を攻めた時、天水太守の馬遵から異心ありと疑われる。馬遵が逃走したため、姜維、梁虔、梁緒と共に降伏。蜀の滅亡前に死んだ。',
  '大目は字。名は不詳。曹爽の腹心。\n【演義】曹爽が司馬懿に処刑された後、仇を討つために偽って司馬師の部下となる。友人の文欽が毌丘倹と共に反乱を起こした時、文欽に司馬師の死が近いことを知らせようとするが、その意図が伝わらず追い返された。\n【正史】少年の頃、曹氏の召使いとなり、そのまま皇帝の側に仕えた。'],
 '商業': [0, 1, 5, 0, 0],
 '農業': [0, 0, 4, 0, 1],
 '文化': [0, 0, 5, 0, 0],
 '訓練': [2, 0, 0, 0, 0],
 '巡察': [1, 0, 0, 0, 0],
 '説破': [0, 1, 5, 0, 0],
 '交渉': [0, 0, 5, 2, 0],
 '弁舌': [0, 0, 4, 1, 0],
 '人徳': [0, 0, 0, 0, 0],
 '威風': [0, 0, 0, 0, 0],
 '神速': [0, 0, 0, 0, 0],
 '奮戦': [1, 0, 0, 0, 0],
 '連戦': [0, 0, 0, 0, 0],
 '攻城': [0, 0, 0, 0, 0],
 '兵器': [0, 0, 0, 0, 0],
 '堅守': [0, 0, 0, 0, 0],
 '水連': [0, 0, 0, 0, 0],
 '一騎': [0, 0, 0, 0, 0],
 '豪傑': [0, 0, 0, 0, 0],
 '鬼謀': [0, 0, 0, 0, 0],
 '音声': ['無骨男', '丁寧男', '策士男', '丁寧男', '老獪男'],
 '武器': ['刀', '弓', '弓', '弓', '弓'],
 '性格': ['猪突', '豪胆', '冷静', '冷静', '小心'],
 '義理': ['普通', '重視', '重視', '普通', '普通'],
 '勇愛': ['重視', '普通', '軽視', '普通', '重視'],
 '才愛': ['軽視', '重視', '最重視', '重視', '重視'],
 '分類': ['武官', '文官', '文官', '文官', '文官'],
 '武具\n興味': ['なし', 'なし', 'なし', 'なし', 'なし'],
 '書物\n興味': ['なし', 'あり', 'あり', 'なし', 'なし'],
 '宝物\n興味': ['あり', 'なし', 'なし', 'あり', 'あり'],
 '酒\n興味': ['あり', 'なし', '普通', '普通', 'なし'],
 '物欲': ['強欲', '無欲', '無欲', '普通', '無欲']}

columns_name = ['名前', '字', '読み', '性別', '生年', '登場', '没年', '寿命', '死因', '父親', '母親', '相性',
       '列伝', '商業', '農業', '文化', '訓練', '巡察', '説破', '交渉', '弁舌', '人徳', '威風', '神速',
       '奮戦', '連戦', '攻城', '兵器', '堅守', '水連', '一騎', '豪傑', '鬼謀', '音声', '武器', '性格',
       '義理', '勇愛', '才愛', '分類', '武具\n興味', '書物\n興味', '宝物\n興味', '酒\n興味', '物欲'
]

df = pd.DataFrame(data=data,columns=columns_name)

df.to_csv('data.csv')
df.to_excel('data.xlsx')

将数据读取到DataFrame对象中。

import pandas as pd

df = pd.read_excel("Romance of the Three Kingdoms 13/人物详情数据.xlsx")
df

在这里插入图片描述

文件的写入方式

Series 和 DataFrame 对象具有能够将数据和标签写入剪贴板或文件的方法。以 pattern 命名.to_<file-type>(),其中<file-type>是目标文件的类型。

  • .to_json(): 将数据保存为JSON格式文件。
  • .to_html(): 将数据保存为HTML格式文件。
  • .to_sql(): 将数据保存到SQL数据库中。
  • .to_pickle(): 将数据保存为pickle格式文件。

文件的读取方式

与文件写入对应,Pandas还提供了相应的读取方法。下面是几种常用的读取方法:

  • .read_csv(): 从CSV文件中读取数据。
  • .read_excel(): 从Excel文件中读取数据。
  • .read_json(): 从JSON文件中读取数据。
  • .read_html(): 从HTML文件中读取数据。
  • .read_sql(): 从SQL数据库中读取数据。
  • .read_pickle(): 从pickle文件中读取数据。

HTML文件操作方式

HTML是一种纯文本文件格式,使用超文本标记语言在浏览器中呈现网页。HTML文件的扩展名为.html.htm。处理和解析HTML文件需要安装lxmlhtml5lib

示例代码:

pip install lxml html5lib

使用to_html()方法将数据保存为HTML文件。

示例代码:

df = pd.DataFrame(data).T
df.to_html('temp_data/data.html')

HTML文件示例

在保存HTML文件时,还可以使用其他一些参数:

  • header:是否保存列名。
  • index:是否保存行标签。
  • classes:为CSS类分配级联样式表。
  • render_links:指定是否将URL转换为HTML链接。
  • table_id:为id标签table分配CSS。
  • escape:决定是否将字符<>&转换为HTML安全字符串。

SQL文件方式

Pandas的IO工具还可以读写数据库,需要使用SQLAlchemy进行操作。Python内置了一个SQLite驱动程序。

安装SQLAlchemy:

pip install sqlalchemy

使用create_engine()方法导入并创建数据库引擎。

示例代码:

from sqlalchemy import create_engine
engine = create_engine('mysql+pymysql://user:password@localhost/sanguo?charset=utf8')

使用to_sql()方法保存数据到数据库。

示例代码:

df.to_sql('table', con=engine, if_exists='append', index=0)

在这里插入图片描述

具有相同名称和路径的数据库可以执行以下操作:

  • if_exists='fail':引发ValueError错误。
  • `if_exists=‘replace’

`:删除表并插入新值。

  • if_exists='append':将新值插入表中。

Pickle 文件方式

Pickling是将Python对象转换为字节流的过程。Python的pickle文件是保存Python对象及其数据结构的二进制文件,通常具有.pickle.pkl的扩展名。

使用to_pickle()方法保存数据到pickle文件。

示例代码:

df.to_pickle('temp_data/data.pickle')

使用read_pickle()方法从pickle文件中读取数据。

示例代码:

df = pd.read_pickle('temp_data/data.pickle')

压缩和解压缩文件

常见的文件压缩后缀包括.gz.bz2.zip.xz

Pandas的数据保存时可以自动推断压缩类型。

在这里插入图片描述

示例代码:

df.to_csv('temp_data/data.csv')
df.to_csv('temp_data/data.csv.zip')
df.to_csv('temp_data/data.csv.gz')
df.to_csv('temp_data/data.csv.xz')
df.to_csv('temp_data/data.csv.bz2')

可以使用read_csv()方法读取压缩文件。

示例代码:

df = pd.read_csv('temp_data/data.csv.zip', index_col=0)

Pickle文件的压缩方法和读取方法。

示例代码:

df = pd.DataFrame(data).T
df.to_pickle('temp_data/data.pickle.compress', compression='gzip')

df = pd.read_pickle('temp_data/data.pickle.compress', compression='gzip')

检索索引和数据

创建 DataFrame 后可以进行一些检索、修改操作。

索引作为序列

df.index
RangeIndex(start=0, stop=5, step=1)

df.columns
Index(['名前', '字', '読み', '性別', '生年', '登場', '没年', '寿命', '死因', '父親', '母親', '相性',
       '列伝', '商業', '農業', '文化', '訓練', '巡察', '説破', '交渉', '弁舌', '人徳', '威風', '神速',
       '奮戦', '連戦', '攻城', '兵器', '堅守', '水連', '一騎', '豪傑', '鬼謀', '音声', '武器', '性格',
       '義理', '勇愛', '才愛', '分類', '武具\n興味', '書物\n興味', '宝物\n興味', '酒\n興味', '物欲'],
      dtype='object')

df.columns[0]
'名前'

用序列修改索引。

df.index = np.arange(10, 15)

df.index
Int64Index([10, 11, 12, 13, 14], dtype='int64')

df

在这里插入图片描述

数据转为 NumPy 数组

转化之后取值方式同List操作。

df.to_numpy()

array([['阿会喃', '-', '-', '男', 190, 217, 225, 36, '不自然死', '-', '-', '62',
        '孟獲の配下。第三洞の元帥。\n【演義】諸葛亮の南蛮征圧で、張翼に襲撃されて捕らえられる。董荼那ともども、諸葛亮に解放されて心服するが、同じく解放されながらも服従しない孟獲の命で沙口の守備に派遣される。次の戦いで馬岱との対戦を避けた董荼那が孟獲に処罰されると、董荼那と結託して孟獲を捕らえ蜀軍に引き渡した。その後、再び釈放された孟獲が諸葛亮に心服したものと誤解し、孟獲に誘い出されて董荼那と共に殺された。\n【正史】記述なし。',
        0, 0, 0, 2, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0,
        '無骨男', '刀', '猪突', '普通', '重視', '軽視', '武官', 'なし', 'なし', 'あり', 'あり',
        '強欲'],
       ......
       ['尹大目', '-', '-', '男', 211, 230, 270, 60, '自然死', '-', '-', '38',
        '大目は字。名は不詳。曹爽の腹心。\n【演義】曹爽が司馬懿に処刑された後、仇を討つために偽って司馬師の部下となる。友人の文欽が毌丘倹と共に反乱を起こした時、文欽に司馬師の死が近いことを知らせようとするが、その意図が伝わらず追い返された。\n【正史】少年の頃、曹氏の召使いとなり、そのまま皇帝の側に仕えた。',
        0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
        '老獪男', '弓', '小心', '普通', '重視', '重視', '文官', 'なし', 'なし', 'あり', 'なし',
        '無欲']], dtype=object)

数据类型

数据值的类型,也称为数据类型或 dtypes,决定了 DataFrame 使用的内存量,以及计算速度和精度水平。

查看数据类型。

df.dtypes

名前        objectobject
読み        object
性別        object
生年         int64
登場         int64
没年         int64
......

dtype: object

使用.astype() 更改数据类型。

df_ = df.astype(dtype={'生年': np.int32, '没年': np.int32})

df_.dtypes
名前        objectobject
読み        object
性別        object
生年         int32
登場         int64
没年         int32
......

dtype: object

DataFrame 大小

.ndim.size.shape分别返回维度数、每个维度上的数据值数和数据值总数。

df_.ndim
2

df_.shape
(5, 45)

df_.size
225

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/614792.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

布局量子计算工业应用!D-Wave正在“偷偷”干大事

​ &#xff08;图片来源&#xff1a;网络&#xff09; D-Wave 致力于让用户从量子计算中即时受益&#xff0c;而不必等到长远的未来。几十年来&#xff0c;这家加拿大公司一直努力将设备商业化&#xff0c;多家企业客户都在使用其量子计算来优化业务运营。例如&#xff0c;Pay…

Spark RDD容错机制

文章目录 一、RDD容错机制&#xff08;一&#xff09;血统方式&#xff08;二&#xff09;设置检查点方式 二、RDD检查点&#xff08;一&#xff09;RDD检查点机制&#xff08;二&#xff09;与RDD持久化的区别&#xff08;三&#xff09;RDD检查点案例演示 三、共享变量&#…

mysql数据库出现Too many connections以及磁盘满了的查看方式

Too many connections问题 这问题是数据库连接数太多了导致的&#xff0c; 两个排查方向 1、当用户数量大的时候 先查看最大连接数show variables like ‘%max_connections%’; 这里的最大连接数就是2000&#xff0c;够用了&#xff0c;一般500-1000就够了&#xff0c;内存多…

【干货分享】3D模型可视化、格式转换引擎和Parasolid如何集成?

​今天分享一个示例项目&#xff0c;该示例项目使用HOOPS链轮将HOOPS Exchange和Siemens Parasolid实施到HOOPS Visualize中。 HOOPS中文网http://techsoft3d.evget.com/↓ 点击下方视频查看详情 ↓ HOOPS Visualize - Exchange和Parasolid集成视频 正如您在上面的视频中看到…

小白必看:零基础入门网络安全

1、什么是网络安全&#xff1f; 官方的回答&#xff1a;指网络系统的硬件、软件及其系统中的数据受到保护&#xff0c;不因偶然的或者恶意的原因而遭受到破坏、更改、泄露&#xff0c;系统连续可靠正常地运行&#xff0c;网络服务不中断。 具有保密性、完整性、可用性、可控性…

chatgpt赋能python:Python如何分成两栏写入Word文档

Python如何分成两栏写入Word文档 在进行文本排版时&#xff0c;有些时候我们需要将文字分成两栏来排版&#xff0c;这样可以让文章更加美观&#xff0c;易读。 本文将介绍一种使用Python将文本分成两栏写入Word文档的方法。在介绍具体实现方法之前&#xff0c;我们先来了解一…

【SLAM】ROS平台下三种自主探索算法总结

目录 前言 一、frontier_exploration 二、explorate_lite 三、rrt_exploration 总结 前言 探索是指当机器人处于一个完全未知或部分已知环境中&#xff0c;通过一定的方法&#xff0c;在合理的时间内&#xff0c;尽可能多的获得周围环境的完整信息和自身的精确定位&#…

自动化测试支持

自动化测试支持 自动化测试是现代软件开发中不可或缺的一环。它可以帮助开发团队快速、精确地检测软件中的缺陷&#xff0c;提高软件质量和开发效率。 自动化测试可以在代码变更频繁、测试用例数庞大时&#xff0c;显著地减少测试时间和工作量。相对于手动测试&#xff0c;自动…

集权设施攻防兵法:实战攻防之堡垒机篇

一、黑客视角下的堡垒机 堡垒机是一种网络安全设备&#xff0c;用于保护和管理企业内部网络与外部网络之间的访问。它作为一种中间节点&#xff0c;提供安全的访问控制和审计功能&#xff0c;用于保护内部网络免受未经授权的访问和攻击。堡垒机通常被用作跳板服务器&#xff0…

计算机网络实验:RIP路由协议配置

目录 前言实验目的实验内容相关知识点实验设备实验过程总结 前言 计算机网络是指由多台计算机通过通信设备和通信线路互联起来&#xff0c;实现信息交换的系统。计算机网络中的路由器是一种专用的网络设备&#xff0c;它负责根据目的地址选择最佳的传输路径&#xff0c;将数据…

容器(第二篇)docker网络

Docker 网络实现原理&#xff1a; Docker使用Linux桥接&#xff0c;在宿主机虚拟一个Docker容器网桥(docker0)&#xff0c;Docker启动一个容器时会根据Docker网桥的网段分配给容器一个IP地址&#xff0c;称为Container-IP&#xff0c;同时Docker网桥是每个容器的默认网关。因为…

6月6日汇报

1. 张量CP分解 三阶张量的CP分解是将其分解为三个矩阵。例如&#xff1a;一个三阶张量 &#xff0c;则CP分解可以写为 其中&#xff0c; 表示向量外积&#xff0c; 。下图为三阶张量的CP分解&#xff1a; 将上面的CP分解展开&#xff0c;也可以写为&#xff1a; 假设有一个三维…

LS1028/LS1043/LS1046+FPGA+TSN多路时间敏感性网络智能工业网关方案

随着 物联网、大数据、人工智能等技术的快速发展与应用&#xff0c;给传统的云计算模式带来了巨大的挑战&#xff0c;这也催生出了计算模式的变革&#xff0c; 边缘计算由此诞生。 所谓边缘计算&#xff0c;是指在靠近物或数据源头的一侧&#xff0c;采用网络、计算、存储、应用…

From Java To Kotlin 2:Kotlin 类型系统与泛型终于懂了

上期主要分享了 From Java To Kotlin 1 &#xff1a;空安全、扩展、函数、Lambda。 这是 From Java to Kotlin 第二期。 带来 表达式思维、子类型化、类型系统、泛型。 From Java to Kotlin 关键在于 思维的转变。 表达式思维 Kotlin 中大部分语句是表达式。 表达式思维是一…

Vue.js 中的数据请求是什么?如何进行数据请求?

Vue.js 中的数据请求是什么&#xff1f;如何进行数据请求&#xff1f; Vue.js 是一款流行的前端框架&#xff0c;它提供了许多方便的工具和 API&#xff0c;用于构建交互式的用户界面。其中&#xff0c;数据请求是 Vue.js 中重要的一部分&#xff0c;它可以让我们从服务器获取…

通过python封装商品ID采集1688商品详情数据,1688商品详情接口,1688API接口

1688是阿里巴巴集团旗下的B2B电商平台&#xff0c;提供海量的商品和服务。通过1688的API接口可以获取到商品的详细数据&#xff0c;并进行采集和分析。 1688的商品详情接口包括以下信息&#xff1a; 商品名称商品图片商品价格商品库存商品属性商品描述商品评价商品销量商品SK…

什么蓝牙耳机通话效果好,介绍几款不错的骨传导耳机

骨传导耳机是一种新型的耳机&#xff0c;相比于传统的耳机&#xff0c;骨传导耳机听歌时不需要将耳朵堵上&#xff0c;不会因为长时间佩戴而对听力造成损害。它不需要入耳也能听到声音&#xff0c;在户外运动时能够及时听到环境音&#xff0c;避免安全隐患。现在在骨传导市面上…

从零开始学习JavaScript:轻松掌握编程语言的核心技能⑤

从零开始学习JavaScript&#xff1a;轻松掌握编程语言的核心技能⑤ 1. JavaScript 函数定义2. JavaScript 函数参数2.1 函数显式参数(Parameters)与隐式参数(Arguments)2.1.1 显式参数&#xff08;Parameters&#xff09;2.1.2 隐式参数&#xff08;Arguments&#xff09; 2.2 …

HVV的艺术系列 之 上线的艺术

上线的艺术 很多时候&#xff0c;拿下的机器情况复杂多样。判断其出网性应该是首要工作。 01 到底该不该上线 承认的是&#xff0c;MSF和CS都是及其出色的后渗透工具。但是面对这种复杂多样的环境&#xff0c;上不上线是个我们要去认真考虑的问题&#xff0c;CS和MSF究竟能给我…

报表自动生成软件有哪些?热门报表自动生成软件推荐

随着数字化时代的到来&#xff0c;数据分析和处理变得越来越重要。在商业领域中&#xff0c;每个公司都需要制作各种类型的报表&#xff0c;以了解他们的运营情况、市场趋势和其他有关业务的信息。但是&#xff0c;手动创建这些报表是非常耗时且容易出错的。因此&#xff0c;报…