Task 06 数组、切片

本文介绍了Go语言中的数组和切片概念。数组是长度固定的元素序列,可以通过索引访问,支持一维和多维数组。切片是数组的抽象,长度可变,可以追加元素并自动扩容。文章还探讨了数组作为函数参数的方式,以及切片的创建、操作和拼接技巧。
摘要由CSDN通过智能技术生成

数组

如何定义数组
数组是具有相同唯一类型的一组已编号且长度固定的数据项序列,这种类型可以是任意的原始类型例如整型、字符串或者自定义类型。
数组元素可以通过索引(位置)来读取(或者修改),索引从 0 开始,第一个元素索引为 0,第二个索引为 1,以此类推。

数组声明
Go 语言数组声明需要指定元素类型及元素个数,语法格式如下:

var variable_name [SIZE] variable_type

以上为一维数组的定义方式。例如以下定义了数组 balance 长度为 10 类型为 float32:

var balance [10] float32 

数组初始化

var balance = [5]float32{
   1000.0,2.0,3.4,7.0,50.0}

初始化数组中 {} 中的元素个数不能大于 [] 中的数字。
如果忽略 [] 中的数字不设置数组大小,Go 语言会根据元素的个数来设置数组的大小:

var balance = [...]float32{
   1000.0, 2.0, 3.4, 7.0, 50.0}

如何操作数据
可以通过循环的方式为其赋予初值:

for i := 0; i < len(arr1); i++ {
   
		arr1[i] = i * 10
	}

可以通过循环的方式遍历数组,与上面不同的是,for循环提供这样的方式来为便利数组:

for index, value := range arr1 {
   
		fmt.Printf("index: %d, value: %d\n", index, value)
	}

多维数组
Go 语言支持多维数组,以下为常用的多维数组声明方式:

var variable_name [SIZE1][SIZE2]...[SIZEN] variable_type

实例:

var arr4 = [5][5]int{
   
		{
   1, 2, 3, 4, 5},
		{
   6, 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
在Python中,可以使用多维数组切片来进行赋值操作。通过给切片赋值,可以修改数组中的特定元素或子数组。例如,假设我们有一个名为a的多维数组,可以使用以下语法进行切片赋值: a[start:end:step] = new_values 其中,start表示切片的起始位置,end表示切片的结束位置(不包括该位置的元素),step表示切片的步长。new_values是要赋给切片的新值。 举个例子,假设我们有以下的多维数组a: a = array([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]]) 如果我们想要将第一列的值都设置为100,可以使用如下的切片赋值操作: a[:, 0] = 100 这样就将第一列的值都设置为100了。 如果我们想要将第二行第三列的值设置为200,可以使用如下的切片赋值操作: a[1, 2] = 200 这样就将第二行第三列的值设置为200了。 同时,多维数组切片赋值也支持同时修改多个元素。比如,如果我们想要将第二行第三列到第四列的值都设置为300和400,可以使用如下的切片赋值操作: a[1, 2:4] = [300, 400] 这样就将第二行第三列到第四列的值都设置为300和400了。 通过以上的多维数组切片赋值操作,可以方便地对多维数组进行元素或子数组的修改。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Python基础教程:切片的赋值](https://blog.csdn.net/sinat_38682860/article/details/118224325)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值