Using string as variable name

2024/10/4 13:33:26

Is there any way for me to use a string to call a method of a class? Here's an example that will hopefully explain better (using the way I think it should be):

class helloworld():def world(self):print "Hello World!"str = "world"
hello = helloworld()hello.`str`()

Which would output Hello World!.

Thanks in advance.

Answer

You can use getattr:

>>> class helloworld:
...     def world(self):
...         print("Hello World!")
... 
>>> m = "world"
>>> hello = helloworld()
>>> getattr(hello, m)()
Hello World!
  • Note that the parens in class helloworld() as in your example are unnecessary, in this case.
  • And, as SilentGhost points out, str is an unfortunate name for a variable.
https://en.xdnf.cn/q/70603.html

Related Q&A

How to sum all amounts by date in pandas dataframe?

I have dataframe with fields last_payout and amount. I need to sum all amount for each month and plot the output. df[[last_payout,amount]].dtypeslast_payout datetime64[ns] amount float64 d…

Unable to import decimal in Python 2.7 or Python 3.3 [duplicate]

This question already has answers here:Importing a library from (or near) a script with the same name raises "AttributeError: module has no attribute" or an ImportError or NameError(4 answers…

I Get ImportError: No module named pathlib, even after installing pathlib with pip

This is my first time asking on this site, so sorry if my question is not layed out correctlyy@DESKTOP-MQJ3NCT:~/Real-Time-Voice-Cloning$ python demo_toolbox.py Traceback (most recent call last):File &…

Python regex separate space-delimited words into a list

If I have a string = "hello world sample text"I want to be able to convert it to a list = ["hello", "world", "sample", "text"]How can I do that with re…

Naive install of PySpark to also support S3 access

I would like to read Parquet data stored on S3 from PySpark.Ive downloaded spark from here:http://www.apache.org/dist/spark/spark-2.1.0/spark-2.1.0-bin-hadoop2.7.tgzAnd installed it to Python naivelycd…

Multiprocessing Pool hangs if child process killed

I launched a pool of worker processes and submitted a bunch of tasks. The system ran low on memory and the oomkiller killed one of the worker processes. The parent process just hung there waiting for t…

What does sys.maxunicode mean?

CPython stores unicode strings as either utf-16 or utf-32 internally depending on compile options. In utf-16 builds of Python string slicing, iteration, and len seem to work on code units, not code po…

How to detect dialogs close event?

Hi everyone.I am making a GUI application using python3.4, PyQt5 in windows 7. Application is very sample. User clicks a main windows button, information dialog pops up. And when a user clicks informat…

How to Make a Portable Jupyter Slideshow

How do I make a Jupyter slide show portable? I can serve the slideshow locally, but I cant send that to anyone and have it work with all the images, slide animation functionality, etc. I am using jupy…

How to animate a bar char being updated in Python

I want to create an animated, stacked bar chart.There is a great tutorial, which shows how to animate line graphs.However, for animating bar charts, the BarContainer object, does not have any attribute…