求教将C语言转化python!!

usingnamespacestd;typedeflonglongll;constintmaxn=1e4+5;constintmod=1e9+7;constintINF=... using namespace std;
typedef long long ll;
const int maxn = 1e4+5;
const int mod = 1e9+7;
const int INF = 1<<30;

struct node
{
string section, key, value;
node(string s="", string k="", string v="")
{
section = s;
key = k;
value = v;
}
bool operator<(const node& n) const
{
if(section != n.section)
return section<n.section;
return key<n.key;
}
}in[maxn];

void trim(string& s)
{
s.erase(s.find_last_not_of(" ") + 1);
s.erase(0, s.find_first_not_of(" "));
}
int main( )
{
//freopen("input.txt", "r", stdin);
char ch;
string preSection, line;
int num = 0, len;
while(getline(cin, line))
{
trim(line);
if(line == "" || line[0]==';')
continue;
ch = line[0];
len = line.length();

if(ch=='[')
{
preSection = "";
for(int i=1; i<len-1; i++)
{
if(line[i] == ';' || line[i]==']')
break;
preSection += line[i];
}
trim(preSection);
preSection = "{" + preSection + "}";
}
else
{
string curKey = "", curValue = "";
int i;
for(i=0; i<len; i++)
{
if(line[i] == '=')
break;
curKey += line[i];
}
i++;
for(; i<len; i++)
{
if(line[i] == ';')
break;
curValue += line[i];
}

trim(curKey);
curKey = "{" + curKey + "}";
trim(curValue);
curValue = "{" + curValue + "}";
in[num++] = node(preSection, curKey, curValue);
}
}
sort(in, in+num);
for(int i=0; i<num; i++)
cout<<in[i].section<<in[i].key<<in[i].value<<endl;
return 0;
}
展开
 我来答
阳光的雷咩咩
2020-09-01 · TA获得超过1.4万个赞
知道大有可为答主
回答量:2.3万
采纳率:66%
帮助的人:7860万
展开全部
这是数据格式化输出?
追问
对 ini解析
追答
不难 估计python只需要10行以内代码就可以搞定
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式