Monica_MTF 2023-01-27 21:07 采纳率: 73.9%
浏览 29
已结题

位置参数跟随关键字参数

位置参数跟随关键字参数是什么意思啊?

img

x=input("x=:");y=input("y=:")
print(x,y=y,x)


  • 写回答

4条回答 默认 最新

  • starlight_2007 2023-01-27 22:56
    关注

    —————————————————————————————————————————————————————————————————
    (1)报错原因
    报错“位置参数跟随关键字参数”其实是因为编译器把print(x,y=y,x)语句识别成了,为print函数传入三个参数,分别是x,y,x,其中,参数y被指定了关键字(即指定要给print函数的y参数传入值为y,请注意,前一个y是函数的形参,后一个y是您通过input语句得到的变量值)。

    关键字参数:传参时,具有类似key=value键值对形式的参数。

    位置参数:传参时,参数数据类型和数量和定义函数时的对应形参一致的参数。

    而在python函数传参时,应该先传入位置参数,再传入关键字参数。
    y=y是关键字参数,x、y是位置参数,x作为位参,传参时位置在关键字参数之后,所以引发报错。

    —————————————————————————————————————————————————————————————————
    (2)实现交换
    按照源代码意思,应该是想对输入的值x、y进行交换,再输出。
    此时,可以先进行交换操作,再进行输出操作。
    实现交换功能的代码如下:

    x,y = y,x
    

    (其实与原文一致)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 1月28日
  • 已采纳回答 1月28日
  • 创建了问题 1月27日

悬赏问题

  • ¥15 STM32无法向设备写入固件
  • ¥15 使用ESP8266连接阿里云出现问题
  • ¥15 BP神经网络控制倒立摆
  • ¥20 要这个数学建模编程的代码 并且能完整允许出来结果 完整的过程和数据的结果
  • ¥15 html5+css和javascript有人可以帮吗?图片要怎么插入代码里面啊
  • ¥30 Unity接入微信SDK 无法开启摄像头
  • ¥20 有偿 写代码 要用特定的软件anaconda 里的jvpyter 用python3写
  • ¥20 cad图纸,chx-3六轴码垛机器人
  • ¥15 移动摄像头专网需要解vlan
  • ¥20 access多表提取相同字段数据并合并