【问题标题】:convert python to c++将python转换为c++
【发布时间】:2014-10-10 08:19:08
【问题描述】:

我想用c++翻译下面的python代码 有人可以帮我吗??

# -*- coding: utf-8 -*-
print("hello")

fichier = open ('S19.txt','r')
CS_MEF = open ('S19_MEF.txt','w')
ligne = fichier.readline()

i=0
for ligne in fichier:
    id_can = ligne[32]+ligne[33]+ligne[34]+ligne[35]
    if ((id_can == '01A7') or (id_can == '01A8')):

        x = int("0x"+ligne[44]+ligne[45]+ligne[41]+ligne[42],16)
        if x > 0x7FFF:
            x -= 0x10000        
        x = float(x)/17.5
        xd = float(x)*57.29578

        y = int("0x"+ligne[50]+ligne[51]+ligne[47]+ligne[48],16)
        if y > 0x7FFF:
            y -= 0x10000          
        y = float(y)/17.5
        yd = float(y)*57.29578

        z = int("0x"+ligne[56]+ligne[57]+ligne[53]+ligne[54],16)
        if z > 0x7FFF:
            z -= 0x10000          
        z = float(y)/17.5
        zd = float(z)*57.29578

        #print ("0x"+ligne[50]+ligne[51]+ligne[47]+ligne[48])
        chaine = " id ="+ id_can + " x= "+ str(x) + " xd= "+ str(xd) + " y= "+ str(y) + " yd= "+ str(yd) + " z= "+ str(z) + " zd= "+ str(zd) + "\n"
        print (chaine)
        #print ("central tête")
        print(i)
        i = i + 1

        CS_MEF.write( str(i))
        CS_MEF.write(chaine)



print (i)
fichier.close()
CS_MEF.close()

【问题讨论】:

  • 有多种方法可以将 Python 与 C++ 接口,包括 SWIG、Boost Python 和 Cython。据我所知,没有办法自动将 Python 转换为 C++。此外,Pypy 可能值得一看。
  • 这不太适合stackoverflow,因为您只是要求人们将代码移植到不同的语言,而人们往往不喜欢成为代码生成工具。如果您在移植时遇到更具体的问题,当然可以,但不是一个大的代码转储。

标签: c++


【解决方案1】:

您可以使用Cython。不过,生成的代码仍将依赖于 Python 库。如果您的目标是通过编译使代码更快,Cython 将帮助您实现这一目标。

【讨论】:

  • 很高兴知道为什么这被否决了。
  • 抱歉死灵,但谷歌的第一页。我认为没有人为他努力工作是 OP 生气。
猜你喜欢
  • 2020-06-16
  • 1970-01-01
  • 2017-07-16
  • 2017-07-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-15
  • 2015-08-01
相关资源
最近更新 更多