我有一个字符串列表.我想为每个字符串分配一个唯一的编号(确切的数字并不重要),并按顺序使用这些编号创建一个相同长度的列表.以下是我最好的尝试,但我不满意有两个原因:
它假设相同的值彼此相邻
我必须用a开始列表0,否则输出将是不正确的
我的代码:
names = ['ll', 'll', 'll', 'hl', 'hl', 'hl', 'LL', 'LL', 'LL', 'HL', 'HL', 'HL']
numbers = [0]
num = 0
for item in range(len(names)):
if item == len(names) - 1:
break
elif names[item] == names[item+1]:
numbers.append(num)
else:
num = num + 1
numbers.append(num)
print(numbers)
Run Code Online (Sandbox Code Playgroud)
我想使代码更通用,因此它将使用未知列表.有任何想法吗?
我正在使用 pandas.read_csv() 读取 excel .csv 文件。我想读取 excel 电子表格的 2 个单独的列范围,例如列 A:D 和 H:J,以出现在最终的 DataFrame 中。我知道我可以在使用索引加载文件后执行此操作,但是我可以指定要加载的 2 个列范围吗?
我试过这样的事情......
usecols=[0:3,7:9]
Run Code Online (Sandbox Code Playgroud)
我知道我可以单独列出每个列号,例如
usecols=[0,1,2,3,7,8,9]
Run Code Online (Sandbox Code Playgroud)
但我已经简化了有问题的文件,在我的真实文件中,我有很多行,所以我需要能够选择 2 个大范围来读取...