Python3(14):语法知识:找到数组中两数之和等于目标数对应的坐标

python3 语法知识:找到数组中两数之和等于目标数对应的坐标

给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。

你可以假设每种输入只会对应一个答案。
示例:

给定 nums = [2, 7, 11, 15], target = 9
因为 nums[0] + nums[1] = 2 + 7 = 9

所以返回 [0, 1]

1.遍历数组方式

#两次循环列表,分别对列表中的所有可能的数字进行相加

def two_sum(alist,target):
   if len(alist)<2:
      return
   for i in range(len(alist)-1):
      for j in range(i+1,len(alist)):
         if alist[i]+alist[j]==target:
             return [i,j]
   return [-1,-1]


nums=[2,7,11,15]
target=9

result=two_sum(nums,target)
print (result)

打印:[0, 1]

2.数组中同一个元素不能使用两遍。那么就不能用两次循环

def two_sum2(alist,target):

   if len(alist)<2:
      return
   #新建立一个空字典用来保存数值及其在列表中对应的索引
   dict1 = {}
   for i in range(0, len(alist)):
         #相减得到另一个数值
         num = target - alist[i]
         #如果另一个数值不在字典中,则将第一个数值及其的索引保存在字典中
         if num not in dict1:
            dict1[alist[i]] = i
            #如果在字典中则返回
         else:
            return [dict1[num], i]
         #print (dict1)
         
nums=[2,7,11,15]
target1=9
res=two_sum2(nums,target1)
print (res)

打印:[0, 1]

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
好的,你的问题是关于 Python 相关的知识点和编程题。我会尽力回答你的问题,下面是我的回答: 1. Python 特性 Python 是一种动态、解释型、面向对象、高级编程语言,具有简单、易学、易读、易写的特点。Python 语言具有很多优秀的特性,例如:动态类型、垃圾回收、强大的标准库、面向对象、函式编程等。 2. Python 基本表达式 Python 的基本表达式包括字、字符串、变量、运算符、表达式、语句等。字包括整、浮点、复等;字符串是一系列字符的序列,可以使用单引号或双引号表示;变量是一个用于存储据的名称,可以是任何合法的标识符;运算符包括算术运算符、比较运算符、逻辑运算符等。 3. Python 定义函 Python 中定义函语法是:def 函名(参列表):函体。其中,参列表可以为空或包含多个参,函体可以包含多条语句,使用 return 语句返回函值。 4. Python 据类型 Python 中常用的据类型包括:字、字符串、列表、元组、集合、字典、布尔值等。其中,字包括整、浮点、复等;字符串是一系列字符的序列;列表是一种有序的可变序列,元素可以是任意类型;元组是一种有序的不可变序列;集合是一种无序的不重复元素集合;字典是一种无序的键值对集合。 5. Numpy 和 Pandas 相关知识点 Numpy 是 Python一个重要的科学计算库,主要用于处理数组和矩阵运算。Pandas 是 Python一个强大的据分析库,主要用于据清洗、据处理和据分析。其中,Series 是 Pandas 中的一种据类型,表示一维数组;DataFrame 是 Pandas 中的另一种据类型,表示二维表格据。 6. 列表排序,输出排序结果 可以使用 Python 中的 sort() 函对列表进行排序,例如: ```python lst = [3, 1, 4, 2, 5] lst.sort() print(lst) ``` 输出结果为:[1, 2, 3, 4, 5]。 7. 字典相关知识 Python 中的字典是一种无序的键值对集合,可以通过键来访问对应的值。可以使用 dict() 函创建字典,例如: ```python d = dict(name='Tom', age=18, gender='male') print(d) ``` 输出结果为:{'name': 'Tom', 'age': 18, 'gender': 'male'}。 8. 高维数组据透视 可以使用 Pandas 中的 pivot_table() 函进行高维数组据透视,例如: ```python import pandas as pd df = pd.read_csv('data.csv') table = pd.pivot_table(df, values='sales', index=['region'], columns=['month'], aggfunc='sum') print(table) ``` 其中,data.csv 是包含销售据的 CSV 文件,region 和 month 是两个列名。 9. 绘制曲线图、折线图 可以使用 Python 中的 Matplotlib 库绘制曲线图、折线图,例如: ```python import matplotlib.pyplot as plt x = [1, 2, 3, 4, 5] y = [3, 5, 7, 6, 4] plt.plot(x, y) plt.show() ``` 其中,x 和 y 分别表示横坐标和纵坐标据。 10. 缺省值检测 可以使用 Pandas 中的 isnull() 函检测缺省值,例如: ```python import pandas as pd df = pd.read_csv('data.csv') null_values = df.isnull().sum() print(null_values) ``` 输出结果为每一列的缺省值量。 11. REST 函 REST 是一种基于 HTTP 协议的 API 设计风格,可以使用 Python 的 Flask 框架编写 RESTful API,例如: ```python from flask import Flask, jsonify, request app = Flask(__name__) @app.route('/hello', methods=['GET']) def hello(): name = request.args.get('name') return jsonify({'message': f'Hello, {name}!'}) if __name__ == '__main__': app.run(debug=True) ``` 其中,/hello 是 API 的路径,可以使用 GET 请求访问,name 是一个。 12. 文件读取 可以使用 Python 中的 open() 函读取文件,例如: ```python with open('data.txt', 'r') as f: data = f.read() print(data) ``` 其中,data.txt 是文件名,'r' 表示读取模式。 13. Pandas 常用统计方法 Pandas 中常用的统计方法包括:mean()、median()、min()、max()、sum()、count()、describe() 等,例如: ```python import pandas as pd df = pd.read_csv('data.csv') print(df.mean()) print(df.describe()) ``` 其中,data.csv 是包含据的 CSV 文件。 14. 读程序写结果 由于您没有给出具体的程序,请在后续问题中给出。 15. 使用 DataFrame 输出指定列/行的特定信息 可以使用 Pandas 中的 loc[] 和 iloc[] 函输出指定列/行的特定信息,例如: ```python import pandas as pd df = pd.read_csv('data.csv') print(df.loc[df['region'] == 'A', 'sales']) print(df.iloc[0:5, 0:3]) ``` 其中,df['region'] == 'A' 表示筛选出 region 列中值为 A 的行,[df['region'] == 'A', 'sales'] 表示输出 sales 列的据;0:5 表示输出前 5 行据,0:3 表示输出前 3 列据。 16. 使用 DataFrame 进行科学运算(乘积) 可以使用 Pandas 中的 apply() 函进行科学运算,例如: ```python import pandas as pd import numpy as np df = pd.read_csv('data.csv') df['total'] = df.apply(lambda row: row['sales'] * row['price'], axis=1) print(df.head()) ``` 其中,axis=1 表示对行进行运算。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

宁宁可可

您的鼓励是我创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值