On 20/02/17 17:55, Ganesh Pal wrote:
1. The only difference between both the programs  the difference are just
the below lines.

newdata = '64000101057804'.decode('hex')

        and

newdata = ""
newdata = '64000101057804'
newdata.decode('hex')


What is happening here and how do I fix this in  program 2  ?   for my eyes
there doesn't look any difference .

Python strings are immutable; methods like decode() create a brand new string for you. What your program 2 version does is to name the string of hex digits "newdata", decode it as hex into a new string and then throw that new string away. Your program 1 version by contrast decodes the string of digits as hex and then names is "newdata", throwing the original string of digits away.

question 2:

I am using  the variable  newdata  because  I can't hardcore the  value , I
have to  keep changing this every time the function is called,  will return
it as a string help me slove this problem

def get_data() :
      return str(data)

new_data =get_data(input)

That seems like a lot of work and syntax errors to do

new_data = raw_input()

(or new_data = input() if you're writing Python 3, which you weren't)

Since you probably want to do this for your file name too, you might want to pass them as command line parameters to the script. Look up sys.argv[] in the standard library, or the argparse module if you're feeling keen.

--
Rhodri James *-* Kynesim Ltd
--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to