more on weak typing..

Lance lbrannma at cablespeed.com
Sun Sep 22 20:57:17 EDT 2002


I found this on the Dive Into Python site:

  statically typed language
  A language in which types are fixed at compile time. Most statically typed
languages enforce this by requiring you to declare all variables with their
datatypes before using them. Java and C are statically typed languages.
  dynamically typed language
  A language in which types are discovered at execution time; the opposite
of statically typed. VBScript and Python are dynamically typed, because they
figure out what type a variable is when you first assign it a value.
  strongly typed language
  A language in which types are always enforced. Java and Python are
strongly typed. If you have an integer, you can't treat it like a string
without explicitly converting it (more on how to do this later in this
chapter).
  weakly typed language
  A language in which types may be ignored; the opposite of strongly typed.
VBScript is weakly typed. In VBScript, you can concatenate the string '12'
and the integer 3 to get the string '123', then treat that as the integer
123, all without any explicit conversion.
So Python is both dynamically typed (because it doesn't use explicit
datatype declarations) and strongly typed (because once a variable has a
datatype, it actually matters).





More information about the Python-list mailing list