GVKun编程网logo

TypeError:%不支持的操作数类型:“ NoneType”和“ int”(不支持该操作undo security-profile)

17

在本文中,我们将详细介绍TypeError:%不支持的操作数类型:“NoneType”和“int”的各个方面,并为您提供关于不支持该操作undosecurity-profile的相关解答,同时,我们也

在本文中,我们将详细介绍TypeError:%不支持的操作数类型:“ NoneType”和“ int”的各个方面,并为您提供关于不支持该操作undo security-profile的相关解答,同时,我们也将为您带来关于ImageDataGenerator with TypeError: 不支持的操作数类型 /: 'tuple' 和 'int'、Keras报告TypeError:+不支持的操作数类型:'NoneType'和'int'、np.dot():TypeError:*:for循环中不支持*:“ float”和“ NoneType”的操作数类型、Python TypeError:^:“ float”和“ int”的不受支持的操作数类型的有用知识。

本文目录一览:

TypeError:%不支持的操作数类型:“ NoneType”和“ int”(不支持该操作undo security-profile)

TypeError:%不支持的操作数类型:“ NoneType”和“ int”(不支持该操作undo security-profile)

def prime(x):
if (x == 0 or x % 2 == 0):
return 0
elif (x == 1):
return 1
else:
for y in range(x-1,0,-1):
if (x % y == 0):
return 0
else:
pass
if (y == 1):
return 1

for x in range(1,20):    if (prime(x)):        print ("x:%d, prime YES") % (x)    else:        print ("x:%d, prime NO") % (x)

我开始试验Python,但我不明白我的代码有什么问题…我得到了:

…打印(“ x:%d,素数为”)%(x)
TypeError:%不支持的操作数类型:’NoneType’和’int’

答案1

小编典典

等等-我找到了。您正在使用Python 3!其中print有一个功能。因此,

print ("x:%d, prime YES") % (x)

实际上意味着

(print ("x:%d, prime YES")) % (x)

而且由于printreturn None,这给了你错误。

另外,请注意-(x)不是包含1个元素的元组,它只是value x。使用(x,)的元组。

因此,只需移动括号并添加逗号即可:

print("x:%d, prime YES" % (x,))

ImageDataGenerator with TypeError: 不支持的操作数类型 /: 'tuple' 和 'int'

ImageDataGenerator with TypeError: 不支持的操作数类型 /: 'tuple' 和 'int'

如何解决ImageDataGenerator with TypeError: 不支持的操作数类型 /: ''tuple'' 和 ''int''?

我正在使用 ImageDataGenerator 为图像分割执行数据增强。 这是我的 ImageDataGenerator 函数代码:

def train_generator(data_aug_dict,train_img_path,train_mask_path,height,width,batch_size,seed,img_dir,mask_dir,img_save_prefix,mask_save_prefix):
    # seed = 1

    image_datagen = ImageDataGenerator(**data_aug_dict)
    mask_datagen = ImageDataGenerator(**data_aug_dict)

    image_generator = image_datagen.flow_from_directory(
            directory = train_img_path,color_mode=''grayscale'',target_size=(height,width),batch_size=batch_size,save_to_dir=img_dir,save_prefix=img_save_prefix,seed=seed)

    mask_generator = mask_datagen.flow_from_directory(
            directory = train_mask_path,save_to_dir=mask_dir,save_prefix=mask_save_prefix,seed=seed)

    train_gen = zip(image_generator,mask_generator)

    for (img,mask) in train_gen:
          img,mask = data_adjust(img,mask)
          yield (img,mask)
        
def data_adjust(img,mask):
      # normalization: to range 0-1
      img = img / 255
      mask = mask / 255

      mask[mask > 0.5] = 1.0
      mask[mask <= 0.5] = 0.0
      return (img,mask)

定义函数后,我是这样调用函数的:

width = 256
height = 256

train_generator_args = dict(rotation_range=0.15,width_shift_range=0.05,height_shift_range=0.05,shear_range=0.05,zoom_range=0.05,horizontal_flip=True,fill_mode=''nearest'')

batch_size = 10
epochs = 100
seed = 1

gen_img_dir = ''/my_data_path''
gen_mask_dir = ''/my_data_path''
gen_img_prefix = "img"
gen_mask_prefix = "mask"


gen_images,gen_masks = train_generator(train_generator_args,gen_img_dir,gen_mask_dir,gen_img_prefix,gen_mask_prefix)

但是,我收到错误 TypeError: unsupported operand type(s) for /: ''tuple'' and ''int'' 我真的不明白这意味着什么,我该如何解决。 谁能帮忙解释一下?非常感谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

Keras报告TypeError:+不支持的操作数类型:'NoneType'和'int'

Keras报告TypeError:+不支持的操作数类型:'NoneType'和'int'

如何解决Keras报告TypeError:+不支持的操作数类型:''NoneType''和''int''?

RNN层的输入将具有的形状(num_timesteps, num_features),即每个样本都由num_timesteps时间步组成,其中每个时间步都是长度的向量num_features。此外,时间步长(即num_timesteps)可以是可变的,也可以是未知的(即None),但是特征的数量(即num_features)应从一开始就固定并指定。因此,您需要更改输入层的形状以与RNN层保持一致。例如:

inputs = keras.Input(shape=(None, 3))  # variable number of timesteps each with length 3
inputs = keras.Input(shape=(4, 3))     # 4 timesteps each with length 3
inputs = keras.Input(shape=(4, None))  # this is WRONG! you can''t do this. Number of features must be fixed

然后,您还需要更改输入数据的形状(即data),以使其与您指定的输入形状一致(即其形状必须为(num_samples, num_timesteps, num_features))。

附带说明,您可以通过SimpleRNN直接使用RNN层来更简单地定义该层:

label = keras.layers.SimpleRNN(units=5, activation=''softmax'')(inputs)

解决方法

我是Keras的初学者,只写一个玩具示例。它报告一个TypeError。代码和错误如下:

码:

inputs = keras.Input(shape=(3,))

cell = keras.layers.SimpleRNNCell(units=5,activation=''softmax'')
label = keras.layers.RNN(cell)(inputs)

model = keras.models.Model(inputs=inputs,outputs=label)
model.compile(optimizer=''rmsprop'',loss=''mae'',metrics=[''acc''])

data = np.array([[1,2,3],[3,4,5]])
labels = np.array([1,2])
model.fit(x=data,y=labels)

错误:

Traceback (most recent call last):
    File "/Users/david/Documents/code/python/Tensorflow/test.py",line 27,in <module>
        run()
    File "/Users/david/Documents/code/python/Tensorflow/test.py",line 21,in run
        label = keras.layers.RNN(cell)(inputs)
    File "/Users/david/anaconda3/lib/python3.6/site-packages/tensorflow/python/keras/layers/recurrent.py",line 619,in __call__
...
    File "/Users/david/anaconda3/lib/python3.6/site-packages/tensorflow/python/ops/init_ops.py",line 473,in __call__
        scale /= max(1.,(fan_in + fan_out) / 2.)
TypeError: unsupported operand type(s) for +: ''NoneType'' and ''int''

那么我该如何处理呢?

np.dot():TypeError:*:for循环中不支持*:“ float”和“ NoneType”的操作数类型

np.dot():TypeError:*:for循环中不支持*:“ float”和“ NoneType”的操作数类型

您的features_train包含“无”值。您可以打印它,也可以在调试模式下观察它,看看出了什么问题。

Python TypeError:^:“ float”和“ int”的不受支持的操作数类型

Python TypeError:^:“ float”和“ int”的不受支持的操作数类型

我编写了一个简单的程序,该程序使用数值积分来近似确定定积分的求值。但是,当我为什么要标题出现错误时,我感到很沮丧。请记住,我已经有一年半没有接触过python了,所以我可能很想念我很想念它,但是如果您能帮助我,我仍然感激不尽:)下面是代码:

import mathdef f(x):    f=math.sqrt(1+(6*x+4)^2)    return flbound=int(input("Input lower bound for the integral"))ubound=int(input("Input upper bound for the integral"))n=int(input("Input number of intervals"))dx=((ubound-lbound)/n)integral=0for i in range(1,n):    integral=integral+dx*f(i*dx)print (integral)

这是IDLE在尝试运行代码时给我的完整错误报告:

Traceback (most recent call last):  File "C:\Users\******\Desktop\integrals.py", line 13, in <module>    integral=integral+dx*f(n*dx)  File "C:\Users\******\Desktop\integrals.py", line 3, in f    f=math.sqrt(1+(6*x+4)^2)TypeError: unsupported operand type(s) for ^: ''float'' and ''int''

答案1

小编典典

尝试提高功率时,请使用操作数**而不是^

f=math.sqrt(1+(6*x+4)**2)

今天关于TypeError:%不支持的操作数类型:“ NoneType”和“ int”不支持该操作undo security-profile的分享就到这里,希望大家有所收获,若想了解更多关于ImageDataGenerator with TypeError: 不支持的操作数类型 /: 'tuple' 和 'int'、Keras报告TypeError:+不支持的操作数类型:'NoneType'和'int'、np.dot():TypeError:*:for循环中不支持*:“ float”和“ NoneType”的操作数类型、Python TypeError:^:“ float”和“ int”的不受支持的操作数类型等相关知识,可以在本站进行查询。

本文标签: