Python Forum
I'm trying to figure out whether this is a method or function call - Printable Version

+- Python Forum (https://python-forum.io)
+-- Forum: Python Coding (https://python-forum.io/Forum-Python-Coding)
+--- Forum: General Coding Help (https://python-forum.io/Forum-General-Coding-Help)
+--- Thread: I'm trying to figure out whether this is a method or function call (/Thread-I-m-trying-to-figure-out-whether-this-is-a-method-or-function-call)



I'm trying to figure out whether this is a method or function call - 357mag - Jul-04-2019

I'm doing some simple string formatting examples in Python and I'm using the old style C method for an example in my program. I understand that when you type %s within your string that is simple a placeholder for where your data or argument is going to go.

But what I don't understand is when you type the final % right before your arguments in parentheses, is that actually a method or a function call? When people were doing C language did they learn that as a call to a function?

Here is my code:

subject = "Engineering"
language = "Python"

print("I am studying %s and using %s as the programming language" % (subject, language))



RE: I'm trying to figure out whether this is a method or function call - snippsat - Jul-04-2019

Don't use this old method anymore.
f-string is what you should use,was new in Python 3.6(2-year ago).
subject = "Engineering"
language = "Python"

print(f"I am studying {subject} and using {language} as the programming language")
Output:
I am studying Engineering and using Python as the programming language
11 year ago in 2.6 foramt() was new.
subject = "Engineering"
language = "Python"

print("I am studying {} and using {} as the programming language".format(subject, language))
Output:
I am studying Engineering and using Python as the programming language
Not only are f-string far more readable more concise,and less prone to error than other ways of formatting,but they are also faster!
>>> name = 'f-string'
>>> print(f"String formatting is called {name.upper():*^20}")
String formatting is called ******F-STRING******

# f-strings can take any Python expressions inside the curly braces.
>>> cost = 99.75999
>>> finance = 50000
>>> print(f'Toltal cost {cost + finance:.2f}')
Toltal cost 50099.76

>>> for word in 'f-strings are cool'.split():
...     print(f'{word.upper():~^20}')
...
~~~~~F-STRINGS~~~~~~
~~~~~~~~ARE~~~~~~~~~
~~~~~~~~COOL~~~~~~~~



RE: I'm trying to figure out whether this is a method or function call - ichabod801 - Jul-04-2019

To answer the original question, it's neither. It's an operator.