我要做的是从数组中提取数字,然后打印****作为数组中的数字。如果它不是数字,那么它将拉出字符串的第一个字母并打印该数组的长度。我是python的新手,我一直在寻找如何做到这一点。任何帮助。
x = [4, "Tom", 1, "Michael", 5, 7, "Jimmy Smith"]
for i in x:
if "a number":
print "*" * i
else:
print str[:1] .lower() * len(str)
答案 0 :(得分:0)
Python并不知道"数字"装置
if "a number":
搜索一个类似"数字"的字符串。我知道的唯一方法(其中可能更多)是使用函数
if type(i) == <class 'int'> :
print("*" * i)
这会向口译员询问i的类型是什么()并检查它是否与您正在寻找的内容(==)相同。
答案 1 :(得分:0)
x = [4, "Tom", 1, "Michael", 5, 7, "Jimmy Smith"]
for i in range(0,len(x),1):
if isinstance(x[i], (int, long, float, complex)):
print("*"*x[i])
else:
print(x[i][:1].lower() + "*" + str(len(x[i])))
答案 2 :(得分:0)
问题的完整答案。
x = [4, "Tom", 1, "Michael", 5, 7, "Jimmy Smith"]
for i in x:
if type(i) == int :
print("*" * i)
elif type(i) == str:
print i[:1].lower() * len(i)