设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
查看: 22278|回复: 2
打印 上一主题 下一主题

【Python 第16课】 字符串格式化2

[复制链接]

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

跳转到指定楼层
楼主
发表于 2014-4-23 17:34:36 |显示全部楼层 |倒序浏览
之前我们说到,可以用%来构造一个字符串,比如
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的一种基本数据结构,以后我们还会用到。

#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

沙发
发表于 2016-1-22 12:18:25 |显示全部楼层
谢冰 发表于 2016-1-21 14:21
初学,不太懂原理,Python3.3上运行不出来结果,需要写成这样:print("{0}'s score is {1}".format('Mike', ...

是的,python3字符串格式化和print都改过语法了
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

板凳
发表于 2016-5-2 13:10:44 |显示全部楼层
追风 发表于 2016-5-2 08:46
练习8:输出乘法表,我想出了一个更具一般性的小程序

蛮好的
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-5-16 03:51 , Processed in 0.027844 second(s), 25 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部