Python Forum
Called Functions Not Working
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Called Functions Not Working
#1
So I am trying to do Five Nights at Freddy's in real life and I need a calculator to see how much power we have left. But I keep running into a problem. I defined a few functions (Using the lights, closing the doors), and called them, but for some reason when I run the script and try to use them it does not work. It's not an error. I will type the function 'l' when running the code and it gives me: <function l at *Random numbers, letters, and symbols*

import time
power = 100 

power_calc = input("l is left door, r is right door, and f is flashlight. Awaiting Input:")
if len(power_calc) < 0:
        print("empty")

#this is for l
def l():
        if power_calc is 1:
                time_1 = time
def ll():
        if power_calc is ll:
            time_2 = time
            time_total_1 = int(time_1) - int(time_2)
            power - time_total_1  

#this is for r
def r():
        if power_calc is r:
                time_3 = time

def rr():
        if power_calc is rr:
            time_4 = time
            time_total_2 = int(time_3) - int(time_4)
            power - time_total_2

#this is for f
def f():
        power - 2

l()
ll()
r()
rr()
f()

if power == 0:
        print("Game Over")
And this is what it will give me when I run it:

Output:
Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:06:47) [MSC v.1914 32 bit (Intel)] on win32 Type "copyright", "credits" or "license()" for more information. >>> RESTART: C:\Users\Steven & Alisha\AppData\Local\Programs\Python\Python37-32\FNaF power calculator.py l is left door, r is right door, and f is flashlight. Awaiting Input: >>> l <function l at 0x033A3C90> >>>
Reply
#2
When calling a function, you need to add parenthesis at the end - l(). Doing this - l will call the function name and it's memory location

I don't know what is up with the output there, but it is showing a new line, the program is no longer running
Reply
#3
power_calc is a string, print(type(power_calc)). You are comparing it to an integer, which will never be True.
Reply
#4
You really need to review functions, especially how to pass values with parameters and return to assignments with the return statement. See the functions tutorial link in my signature, below.

Also, time is a module. Doing time_1 = time just gives you a new name for the module, which goes away after the function ends. If you want to get the current time using the time module's time function, you want time_1 = time.time().
Craig "Ichabod" O'Brien - xenomind.com
I wish you happiness.
Recommended Tutorials: BBCode, functions, classes, text adventures
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Multiple variable inputs when only one is called for ChrisDall 2 449 Oct-20-2023, 07:43 PM
Last Post: deanhystad
  Couldn't install a go-game called dlgo Nomamesse 14 2,977 Jan-05-2023, 06:38 PM
Last Post: Nomamesse
  how can a function find the name by which it is called? Skaperen 18 3,322 Aug-24-2022, 04:52 PM
Last Post: Skaperen
  function with 'self' input parameter errors out with and without 'self' called dford 12 2,995 Jan-15-2022, 06:07 PM
Last Post: deanhystad
  What is this formatting called? Mark17 2 1,731 Dec-14-2020, 08:42 PM
Last Post: snippsat
  Does anyone have unicurses panel functions working on a Windows 10 platform? pjfarley3 0 1,433 Oct-11-2020, 04:41 AM
Last Post: pjfarley3
  Class Instances called in the wrong order IanIous 4 2,777 Mar-06-2020, 02:16 PM
Last Post: IanIous
  How do you add the results together each time a function is called? Exsul 10 4,997 Aug-09-2019, 09:18 PM
Last Post: ichabod801
  Getting error when called through instance method aankrose 2 2,537 Mar-02-2019, 07:19 PM
Last Post: aankrose
  Working on nested functions boxerboy1168 2 2,540 Dec-28-2018, 07:54 AM
Last Post: Gribouillis

Forum Jump:

User Panel Messages

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