Python 上的类型错误:并非所有参数都在字符串格式化期间转换
Type error on Python: not all arguments converted during string formatting
我正在尝试使用 pytorch 随机变换将图像乘以图像数据集。
该代码曾经有效,但今天它似乎会产生格式错误。
将数据循环到更大的样本中。
or _ in range(80):
for img, label in dataset:
save_image(img, 'img'+str(img_num)+'.png' % '/media/data/abc', normalize=True)
print(img_num)
img_num += 1
为什么 python 代码会产生字符串格式错误?因此
Traceback (most recent call last):
File "/home/user/PycharmProjects/augment/dataaugment.py", line 26, in <module>
save_image(img, 'img'+str(img_num)+'.png' % '/media/data/abc', normalize=True)
TypeError: not all arguments converted during string formatting
有什么解决办法或者我有什么错误吗?
当您在字符串上使用 %
运算符时,第一个字符串需要具有格式占位符,这些占位符将被 %
之后的值替换。但是你在第一个字符串中没有%s
。
创建路径名时,您应该使用 os.path.join()
而不是字符串操作。
和 f-strings 比连接和 str()
调用在将变量与字符串组合时更容易阅读。
import os
for _ in range(80):
for img, label in dataset:
save_image(img, os.path.join('/media/data/abc', f'img{img_num}.png', normalize=True)
print(img_num)
img_num += 1
我正在尝试使用 pytorch 随机变换将图像乘以图像数据集。
该代码曾经有效,但今天它似乎会产生格式错误。
将数据循环到更大的样本中。
or _ in range(80):
for img, label in dataset:
save_image(img, 'img'+str(img_num)+'.png' % '/media/data/abc', normalize=True)
print(img_num)
img_num += 1
为什么 python 代码会产生字符串格式错误?因此
Traceback (most recent call last):
File "/home/user/PycharmProjects/augment/dataaugment.py", line 26, in <module>
save_image(img, 'img'+str(img_num)+'.png' % '/media/data/abc', normalize=True)
TypeError: not all arguments converted during string formatting
有什么解决办法或者我有什么错误吗?
当您在字符串上使用 %
运算符时,第一个字符串需要具有格式占位符,这些占位符将被 %
之后的值替换。但是你在第一个字符串中没有%s
。
创建路径名时,您应该使用 os.path.join()
而不是字符串操作。
和 f-strings 比连接和 str()
调用在将变量与字符串组合时更容易阅读。
import os
for _ in range(80):
for img, label in dataset:
save_image(img, os.path.join('/media/data/abc', f'img{img_num}.png', normalize=True)
print(img_num)
img_num += 1