gpt4 book ai didi

python - 创建基于字符串的数组在字符串之前引入随机 'b'

转载 作者:行者123 更新时间:2023-12-01 02:42:07 24 4
gpt4 key购买 nike

我正在尝试创建一个基本上包含单词列表的表格。我更喜欢表格格式,因为最终它会进入 Excel。然而,通过我的代码,我不断在字符串之前引入字母“b”。任何帮助,将不胜感激。

我什至尝试在各个阶段进行打印,以了解它们在何处以及为何被引入。代码:

from xlwt import Workbook
import numpy as np

wb = Workbook()
Number_Of_Days = int(input('How many days do you want?'))
All_Sheets = np.chararray((Number_Of_Days,1))
All_Sheets = np.chararray(All_Sheets.shape, itemsize = 10)
All_Sheets[:] = ''

print(All_Sheets)

count = 0
while count < Number_Of_Days:
Sheet_Name = input(print('Enter the name of day', count+1))
All_Sheets [count,0] = Sheet_Name
count = count + 1

print(All_Sheets)

Code and output

最佳答案

请注意 chararray 文档:

The chararray class exists for backwards compatibility with Numarray, it is not recommended for new development. Starting from numpy 1.4, if one needs arrays of strings, it is recommended to use arrays of dtype object_, string_ or unicode_, and use the free functions in the numpy.char module for fast vectorized string operations.

In [191]: np.chararray((2,1))
Out[191]:
chararray([[''],
[b'\x01']],
dtype='|S1')

“|S1”数据类型表示单字符字节串。这是 Py2 中的默认类型,但在 Py3 中它用 b 字符标记。

初始化字符数组的更好方法是:

In [192]: np.zeros((2,1), dtype='U10')
Out[192]:
array([[''],
['']],
dtype='<U10')

In [194]: np.zeros((2,1), dtype='S10')
Out[194]:
array([[b''],
[b'']],
dtype='|S10')

或者使用字符串列表更好:

In [195]: np.array(['one','two','three'])
Out[195]:
array(['one', 'two', 'three'],
dtype='<U5')

关于python - 创建基于字符串的数组在字符串之前引入随机 'b',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45573534/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com