我在Visual Studio上研究Python 3项目。 我用以下代码对整数输入进行锯齿处理:
dynamic_arrayList = [ ]
hexdec = input("Enter even number ");
strArray = [hexdec[idx:idx+2] for idx in range(len(hexdec)) if idx%2 == 0]
dynamic_arrayList.append(strArray)
print(dynamic_arrayList)
过一会儿,当用户输入011001
时,输出为[["01","10","01"]]
当我调用列表中的第一个元素时,它给出了["01","10","01"]
的整数,但是我只想看到01
有什么办法吗?
答案 0 :(得分:0)
这是一个嵌套列表,因此您可以调用第一个元素[0]
并将其放入列表中,然后调用该列表的第一个元素:
[["01","10","01"]]
的第一个元素是["01","10","01"]
,["01","10","01"]
的第一个元素是01
。
dynamic_arrayList = [ ]
hexdec = input("Enter even number ");
strArray = [hexdec[idx:idx+2] for idx in range(len(hexdec)) if idx%2 == 0]
dynamic_arrayList.append(strArray)
print(dynamic_arrayList[0][0])
答案 1 :(得分:0)
您要将列表strArray
附加到另一个列表dynamic_arrayList
,因此strArray
的值嵌套在列表列表中。
您可以使用01
访问值dynamic_arrayList[0][0]
,例如dynamic_arrayList
列表的第一个子列表中的第一个元素,或者没有充分的理由嵌套{{ 1}}在另一个列表中,您只需使用strArray
来访问该项目。
答案 2 :(得分:0)
之所以会这样,是因为您通过执行list
将dynamic_arrayList.append(strArray)
附加到另一个dynamic_arrayList = [ ]
hexdec = input("Enter even number ");
strArray = [hexdec[idx:idx+2] for idx in range(len(hexdec)) if idx%2 == 0]
dynamic_arrayList += strArray
print(dynamic_arrayList)
。
如果您不想在列表中添加列表,请执行以下操作:
dynamic_arrayList = strArray
或执行以下操作:dynamic_arrayList
。
如果您不想更改dynamic_arrayList[0][0]
的结构,则可以访问第一个元素,例如: public class SharedHelper
{
public static SharedPreferences sharedPreferences;
public static SharedPreferences.Editor editor;
public static void putKey(Context context, String Key, String Value) {
sharedPreferences = context.getSharedPreferences(BuildConfig.APPLICATION_ID, Context.MODE_PRIVATE);
editor = sharedPreferences.edit();
editor.putString(Key, Value);
editor.apply();
}
public static String getKey(Context context, String Key) {
sharedPreferences = context.getSharedPreferences(BuildConfig.APPLICATION_ID, Context.MODE_PRIVATE);
return sharedPreferences.getString(Key, "");
}
}
。