The following warnings occurred:
Warning [2] count(): Parameter must be an array or an object that implements Countable - Line: 795 - File: showthread.php PHP 7.4.33 (FreeBSD)
File Line Function
/showthread.php 795 errorHandler->error





Post Reply 
How do I get CAS to evaluate a Python-in-CAS function? (Solved)
12-12-2019, 11:33 PM (This post was last modified: 12-13-2019 09:21 PM by StephenG1CMZ.)
Post: #1
How do I get CAS to evaluate a Python-in-CAS function? (Solved)
How do I get this function to evaluate...
All I get is the name of the function returned
(The Python string syntax may need correcting too

Code:

CAS file: 
#cas
HAMMINGCAS():=
BEGIN
def hammingdistance(s1, s2) -> int:
    """Return the Hamming distance between equal-length sequences."""
    if len(s1) != len(s2):
        raise ValueError("Undefined for sequences of unequal length.")
    count = 0
    for ii in s1
     el1 = s1(ii)
     el2 = s2(ii)
     if el1 != el2:
      count = count+1
    return count

    """return sum(el1 != el2 for el1, el2 in zip(s1, s2)) """
END;
#end

PPL file:

 EXPORT TRY()
 BEGIN
  LOCAL ST1:="AB";
  LOCAL ST2:="AB";
  RETURN CAS("eval(hammingdist(ST1,ST2))");
 END;

EXPORT HAMMING()
BEGIN
  //def hamming_distance(s1, s2) -> int:
  // """Return the Hamming distance between equal-length sequences."""
  //  if len(s1) != len(s2):
  //      raise ValueError("Undefined for sequences of unequal length.")
  //  return sum(el1 != el2 for el1, el2 in zip(s1, s2))
END;

Stephen Lewkowicz (G1CMZ)
https://my.numworks.com/python/steveg1cmz
Visit this user's website Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
How do I get CAS to evaluate a Python-in-CAS function? (Solved) - StephenG1CMZ - 12-12-2019 11:33 PM



User(s) browsing this thread: 2 Guest(s)