将集合的字符串表示形式转换为集合

时间:2016-11-25 07:30:36

标签: string python-2.7 set representation

给定(在Python 2.7中)..

nonzero_element

如何将上述内容转换为myString='{hello,world}'

我尝试set object {'hello', 'world'},但它会抛出eval(myString)

我尝试NameError: name 'hello' is not defined,但它会抛出ast.literal_eval(myString)

谢谢!

2 个答案:

答案 0 :(得分:0)

在java中你可以这样做:

  1. 首先,如果myString始终以“{”开头并以“}”结尾,则首先通过子字符串去掉那些。

    String myString =“{hello,world}”; String myStringFixed = myString.substring(1,myString.length() - 1);

  2. myStringFixed的输出现在是“hello,world”

    1. 通过拆分将字符串转换为数组。

      String [] arrayOfStrings = myStringFixed.split(“,”);

    2. arrayOfStrings的输出将是[“hello”,“world”];

      1. 现在,您可以通过运行循环并通过该数组创建一个集合,并将这些元素添加到集合中。

        设置stringSet = new HashSet();

        for(int i = 0; i< arrayOfStrings.length; i ++) {     stringSet.add(arrayOfStrings [I]); }

答案 1 :(得分:0)

看起来您很近。如果在各个元素周围加上引号,则可以使用Python的$firstname_iterators = explode('->',$firstname); $ShippingFirstName=$rvalue->{$firstname_iterators[0]}()->{$firstname_iterators[1]};


$ShippingFirstName=$rvalue;
foreach ($firstname_iterators as $key => $firstname_iterator) {
    $ShippingFirstName=$ShippingFirstName->{$firstname_iterator};
}