生手学python,关于print()

新手学python,关于print()
那个参数列表是怎么写的...,大牛顺便说写print()的用法。

>>> name = 'wang'
>>> age = '25'
>>> print ("%s is %d old" %(name,age))

------解决方案--------------------
熟悉c语言的printf就知道%s,%d...这些的意思了

%s : 字符串
%d : 整型数字

name = 'wang'
age = '25'
print('%s = %s' % (name,age))
或者
name = 'wang'
age = 25
print('%s = %d' % (name,age))

区别就是age如果是数字25,就用%d,字符串用%s
------解决方案--------------------
同上,或者直接这样输出

name = 'wang'
age = '25'
print name + ' is ' + age + ' old'

这样输出必须age是字符串类型
------解决方案--------------------
1.目前Python分Python 2.x和Python 3.x,如果不了解,可以参考:
【整理】总结Python2(Python 2.x版本)和Python3(Python 3.x版本)之间的区别

其中,Python 3.x中,print的语法变了,变成你这里所用的带括号的。

2.官网的,Python 3.x中,关于print的解释在这里:
http://docs.python.org/3.1/library/functions.html#print
不过其没有说明具体的参数是如何使用的。
原因在于,print函数,太普通了,以至于不需要解释。

3.如果你之前接触别的语言,比如C语言等等,就会明白到print函数的参数的用法的。
其和C语言中printf的基本用法是一样的。
如果没接触过,这里简单的解释一下。
复杂的就不说了。先说几个最常用的:
print中的参数,以%xxx表示对应的不同的格式。
其中xxx最常见的有:
s -> %s -> 表示字符串(string)
d -> %d -> 表示 整型 (interger)
所以,你这里(python 3.x中)要写成
print ("%s is %d old" %(name,age))
其中:
%s对应的第一个参数name,必须是string类型,此处你赋值为'wang',是对的
%d对应的第二个参数age,必须是整型,你这里赋值为'25'是不对的,因为'25'表示的是字符串'25',应该赋值为25,表示是整数25.
如果参数类型不对,print会报错的。

4.print中你所看到的
print ("%s is %d old" %(name,age))
中的
"%s is %d old"

(name,age)
中间的那个%,表示格式化字符串的分隔符。
%前面的
"%s is %d old"表示要输出的内容,其中带有变量类型
%后面的
(name,age)
表示以此对应前面输出中的%xxx的变量

5. 如果不带%的话,即:
print ("%s is %d old" %(name,age))
也可以写成
print(name," is ",str(age)," old")
或者是:
print(name + " is " + str(age) + " old")
其中str(age)表示把整数25转换为字符串'25'