Python Forum
Have function reject bad argument when argument is called by another function?
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Have function reject bad argument when argument is called by another function?
#3
Thank you I will take a look.

I will clarify what I meant if this does not solve the issue.

x = {"F": "Fluorine", "Cl": "Chlorine"}
y = {"O": "Oxygen"}
 
def hal(a):
  for halogens in x:
    if halogens == a:
      print(x[a])
  return(x[a])  
   
 
def acc(b):
  for acceptors in y:
    if acceptors == b:
      print(y[b])
  return y[b]
  
def is_halogen_bond(halogen, acceptor ): 
  hal(a)
  acc(b)
 
is_halogen_bond("F", "O")
On the code that I have I want is
 is_halogen_bond("F", "O") 
to print Fluorine and Oxygen, which it does.

I get a "KeyError" every time that "halogen" or "acceptor" is put inside of the arguments. Perhaps my failed code would be a better way to illustrate what I am speaking of . . .

Error:
Traceback (most recent call last): File "halogen.py", line 24, in <module> is_halogen_bond("B", "O") File "halogen.py", line 21, in is_halogen_bond hal(halogen) File "halogen.py", line 8, in hal return(x[a]) KeyError: 'B'
To resolve this issue I attempted a while loop and all loops under the sun and I failed. What I want my code to do from this point is then print something like this if the halogen argument produces a key error:
print("Error, not a halogen.")
and then prompt the user to enter a halogen that is in the list x. I want the same to apply for acceptors with the list y.

I know loops are involved in here but I am struggling to create one correctly.

Thanks for your time!

Sorry, I made a mistake...

I meant " I get a "KeyError" every time a "halogen" or "acceptor" is put inside of the arguments that is not listed in x or y. Perhaps my failed code would be a better way to illustrate what I am speaking of . . ."
Reply


Messages In This Thread
RE: Have function reject bad argument when argument is called by another function? - by jobroinc - Jul-19-2018, 07:18 PM
KeyError, Input loop - by jobroinc - Jul-19-2018, 11:02 PM
RE: KeyError, Input loop - by gontajones - Jul-19-2018, 11:48 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  TypeError: Diagram.render() takes 1 positional argument but 2 were given sachin1361 0 381 Apr-23-2024, 06:39 AM
Last Post: sachin1361
  501 Server cannot accept argument anna17 0 358 Apr-11-2024, 01:08 AM
Last Post: anna17
  Django "Unexpected Keyword Argument 'min_value'" AstralWeeks 0 409 Mar-27-2024, 04:56 AM
Last Post: AstralWeeks
  File is not being created with 'w' argument CAD79 3 608 Mar-14-2024, 12:05 PM
Last Post: snippsat
  The function of double underscore back and front in a class function name? Pedroski55 9 969 Feb-19-2024, 03:51 PM
Last Post: deanhystad
  __init__() got multiple values for argument 'schema' dawid294 4 3,383 Jan-03-2024, 09:42 AM
Last Post: buran
  mutable argument in function definition akbarza 1 615 Dec-15-2023, 02:00 PM
Last Post: deanhystad
  Multiple variable inputs when only one is called for ChrisDall 2 584 Oct-20-2023, 07:43 PM
Last Post: deanhystad
  Strange argument count error rowan_bradley 3 873 Aug-06-2023, 10:58 AM
Last Post: rowan_bradley
  Invalid argument: 'images\x08ackground.jpg' CatBall 4 1,168 Jun-19-2023, 09:28 AM
Last Post: CatBall

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020