You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中open.write()写入RSA公私钥时报TypeError如何解决?

错误原因说明

你遇到的报错有两个核心问题:

  1. write()方法传参错误
    Python的文件对象write()方法只能接收单个字符串参数,你像print()一样用逗号分隔传入字符串和变量是错误用法,必须先把要写入的内容拼接成完整字符串再传入。
  2. 入口判断语法错误
    你写的if _name_ == 'main':是错误写法,正确的主程序入口判断应该是if __name__ == '__main__':,变量前后各需要2个下划线,匹配的值也要对应带双下划线,否则这段生成密钥写入文件的代码块根本不会触发执行。

修正后的代码片段

把密钥写入部分的代码替换为以下内容即可:

if __name__ == '__main__':
    public_key,private_key = generate_keyPairs() 
    print("Public_Key(Traditional_RSA): ",public_key)
    # 拼接成单个字符串再传入write
    details_file.write(f"Public_Key(Traditional_RSA): {public_key}\n")
    print("Private_Key(Traditional_RSA): ",private_key)
    details_file.write(f"Private_Key(Traditional_RSA): {private_key}\n")

你也可以用你之前写的%格式化方式拼接,只要保证传给write()的只有一个字符串参数即可。

内容的提问来源于stack exchange,提问作者rishabh goyal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 00:24:03