473,386 Members | 1,804 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,386 software developers and data experts.

global variables ?

how do I assign a value to a variable inside a function then use it in the
main body ?

i am trying to unpickle a dictionary in a function to use it in the program

ruari
Jul 18 '05 #1
5 15992
ruari mactaggart wrote:
how do I assign a value to a variable inside a function then use it in the
main body ?
If the variable name is for example 'isbadforyou', start the function with
the statement:

global isbadforyou

i am trying to unpickle a dictionary in a function to use it in the
program


By far the best approach for this is to have the function work with
local variables (faster as well as cleaner), preparing the dictionary
say in local variable 'result', and end the function with:

return result

then, the function's caller gets to decide the name (a sounder
organization!) just by calling the function in some way such as:

thenameilike = thefunction(its, arguments, ifany)
Alex

Jul 18 '05 #2

"ruari mactaggart" <ru***@charliefortune.com> wrote in message
news:bo**********@news8.svr.pol.co.uk...
how do I assign a value to a variable inside a function then use it in the
main body ?

i am trying to unpickle a dictionary in a function to use it in the program

Since Alex has already mentioned the 'global' statement,
I won't dwell on it. I'd just mention that it's a whole lot
simpler to use a global dictionary or an object instance
than to use a simple variable that has to be rebound.

For example:

foobar = "huh?"

def snafu():
global foobar
foobar = "what?"
Using a dictionary, it looks like this:

foodict = {foobar: "huh?"}

def snafu():
foodict["foobar"] = "what?"

That lets you consolidate all of those messy global variables
in one place as well as giving you a name you can use for
better internal documentation.

John Roth
ruari

Jul 18 '05 #3
thank you ! It works now. This is very satisfying.

John Roth <ne********@jhrothjr.com> wrote in message
news:vq************@news.supernews.com...

"ruari mactaggart" <ru***@charliefortune.com> wrote in message
news:bo**********@news8.svr.pol.co.uk...
how do I assign a value to a variable inside a function then use it in the main body ?

i am trying to unpickle a dictionary in a function to use it in the

program

Since Alex has already mentioned the 'global' statement,
I won't dwell on it. I'd just mention that it's a whole lot
simpler to use a global dictionary or an object instance
than to use a simple variable that has to be rebound.

For example:

foobar = "huh?"

def snafu():
global foobar
foobar = "what?"
Using a dictionary, it looks like this:

foodict = {foobar: "huh?"}

def snafu():
foodict["foobar"] = "what?"

That lets you consolidate all of those messy global variables
in one place as well as giving you a name you can use for
better internal documentation.

John Roth

ruari


Jul 18 '05 #4
Ulrich Petri:

Well - no. It's not.
Globals are bad, ugly, ...


Well, not in and of themselves. They're used in about 200 places in the
standard distribution, and there's talk (although no plans) of extending the
syntax further to allow designation of an encompassing (or possible other)
namespace, as in:

global var in namespace
Emile van Sebille
em***@fenx.com
Jul 18 '05 #5

"ruari mactaggart" <ru***@charliefortune.com> schrieb im Newsbeitrag
news:bo**********@news6.svr.pol.co.uk...
John Roth <ne********@jhrothjr.com> wrote in message
news:vq************@news.supernews.com...
Using a dictionary, it looks like this:

foodict = {foobar: "huh?"}

def snafu():
foodict["foobar"] = "what?"

That lets you consolidate all of those messy global variables
in one place as well as giving you a name you can use for
better internal documentation.

John Roth


thank you ! It works now. This is very satisfying.


Well - no. It's not.
Globals are bad, ugly, ...
Jul 18 '05 #6

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

10
by: Matt | last post by:
Greetings, What are people's thoughts on global variables in C++? Why are we taught not to use them in programming? Is it true that if you are running two copies of the C program one copy can...
4
by: Andrew V. Romero | last post by:
I have been working on a function which makes it easier for me to pull variables from the URL. So far I have: <script language="JavaScript"> var variablesInUrl; var vArray = new Array(); ...
12
by: David WOO | last post by:
Hi, I am a newbie on C++, I need to define some global variables which should be accessible to most classes. In the mean time, I don't won't the global variables be modified freely at most of...
2
by: Bryan Parkoff | last post by:
….I would like to know which is the best optimization to use global variable or global struct. I always tell C/C++ Compiler to turn on optimization. ….I use underscore between first name and...
17
by: MLH | last post by:
A97 Topic: If there is a way to preserve the values assigned to global variables when an untrapped runtime error occurs? I don't think there is, but I thought I'd ask. During development, I'm...
33
by: MLH | last post by:
I've read some posts indicating that having tons of GV's in an Access app is a bad idea. Personally, I love GVs and I use them (possibly abuse them) all the time for everything imaginable - have...
9
by: CDMAPoster | last post by:
About a year ago there was a thread about the use of global variables in A97: http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/fedc837a5aeb6157 Best Practices by Kang...
5
by: Sandman | last post by:
I dont think I understand them. I've read the section on scope in the manual inside out. I'm running PHP 5.2.0 Here is the code I'm working on: //include_me.php <?php $MYVAR = array(); global...
1
weaknessforcats
by: weaknessforcats | last post by:
C++: The Case Against Global Variables Summary This article explores the negative ramifications of using global variables. The use of global variables is such a problem that C++ architects have...
112
by: istillshine | last post by:
When I control if I print messages, I usually use a global variable "int silent". When I set "-silent" flag in my command line parameters, I set silent = 1 in my main.c. I have many functions...
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.