TypeError:-:“ str”和“ float”的不受支持的操作数类型(我将元组作为参数传递)

时间:2019-08-20 19:13:37

标签: python oop tuples

我正在创建一个函数,该函数在进行一些计算后会返回一个列表。 为此,我需要传递一个元组参数 pos 一个浮点数元组。 但是该功能无法读取!

def matrix_with_sorted_dist(self,pos):

     self.pos=pos
     matrix=[]
     for i in range (1,self.nbrelignes+1):
         for j in range(1,self.nbrecol+1):
             #some coooooode

             x=abs(self.pos[1] -(i*self.L_R+((i*0.5*self.L_A )  )))
             matrix.append(
     return (matrix)

我尝试了 self.pos = tuple(pos),但是它不起作用! 如此迷茫!帮助

1 个答案:

答案 0 :(得分:0)

您收到的错误消息听起来像self.pos [1]的值被解释为字符串,而不是浮点数。如果您确定该值在该位置始终是浮点数,则可以通过

键入强制类型转换
 private professionalForm:BehaviorSubject<FormGroup | undefined> 
  = new BehaviorSubject(this.fb.group(new ProfessionalForm()));
  professionalForm$: Observable<FormGroup> = this.professionalForm.asObservable();

  constructor(private fb: FormBuilder) { }
  // when child component is loaded, this function is called
  addJob() {
    const currentProfessional = this.professionalForm.getValue();
    const currentJob = currentProfessional.get('jobs') as FormArray;

    currentJob.push(
      this.fb.group(
        new WorkerForm()
      )
    )
  }

如果有可能是合法字符串,则可能需要多做一些分析以帮助确定您实际获取的数据。