Crossin的编程教室
标题: 【Python 第16课】 字符串格式化2 [打印本页]
作者: crossin先生 时间: 2014-4-23 17:34
标题: 【Python 第16课】 字符串格式化2
之前我们说到,可以用%来构造一个字符串,比如
print '%s is easy to learn' % 'Python'
有时候,仅仅代入一个值不能满足我们构造字符串的需要。假设你现在有一组学生成绩的数据,你要输出这些数据。在一行中,既要输出学生的姓名,又要输出他的成绩。例如
Mike‘s score is 87.
Lily‘s score is 95.
在python中,你可以这样实现:
print "%s's score is %d" % ('Mike', 87)
或者
name = ‘Lily’
score = 95
print "%s's score is %d" % (name, score)
无论你有多少个值需要代入字符串中进行格式化,只需要在字符串中的合适位置用对应格式的%表示,然后在后面的括号中按顺序提供代入的值就可以了。占位的%和括号中的值在数量上必须相等,类型也要匹配。
('Mike', 87)这种用()表示的一组数据在python中被称为元组(tuple),是python的一种基本数据结构,以后我们还会用到。
作者: cross 时间: 2015-4-21 10:49
消灭零回复
作者: fix 时间: 2015-5-13 08:57
昨晚做完上一个题睡得觉,今早学几课再改论文。
作者: lovia 时间: 2015-5-27 20:00
- name="Crossin"
- age=72
- score=20
- print "%s's score is %s,and his age is %s"%(name,score,age)
- print"%s's score is %s,and his age is %s"%('Crossin',20,72)
复制代码
作者: 草办 时间: 2015-12-3 10:52
get
作者: 谢冰 时间: 2016-1-21 14:21
初学,不太懂原理,Python3.3上运行不出来结果,需要写成这样:print("{0}'s score is {1}".format('Mike',96))才能出结果。
作者: crossin先生 时间: 2016-1-22 12:18
谢冰 发表于 2016-1-21 14:21
初学,不太懂原理,Python3.3上运行不出来结果,需要写成这样:print("{0}'s score is {1}".format('Mike', ...
是的,python3字符串格式化和print都改过语法了
作者: 对不起我是保镖 时间: 2016-4-4 13:00
print " %s's score is %d" % (name ,score)
%s %d分别表示str类型和整数
作者: 追风 时间: 2016-5-1 15:42
学了这一课我就在想,能不能重复输入名字和成绩呢?于是,哈哈,就琢磨出下面的小程序:
作者: 追风 时间: 2016-5-2 08:46
练习8:输出乘法表,我想出了一个更具一般性的小程序
作者: crossin先生 时间: 2016-5-2 13:10
追风 发表于 2016-5-2 08:46
练习8:输出乘法表,我想出了一个更具一般性的小程序
蛮好的
作者: 追风 时间: 2016-5-2 14:44
crossin先生 发表于 2016-5-2 13:10
蛮好的
谢谢Crossin老师!
作者: lubvi 时间: 2017-10-24 11:15
追风 发表于 2016-5-1 15:42
学了这一课我就在想,能不能重复输入名字和成绩呢?于是,哈哈,就琢磨出下面的小程序:
...
请问,py3的话 要怎么改呢
作者: woodumpling 时间: 2017-10-25 09:26
py3中,print使用时需带上括号,print()在3中是一个函数
欢迎光临 Crossin的编程教室 (https://bbs.crossincode.com/) |
Powered by Discuz! X2.5 |