您的位置:首页 > 编程语言 > Python开发

编程学习第三天,更多的Python

2016-03-06 19:35 549 查看
好的,今天终于来到了编程学习第三天,其实开始还是想说点其他的。

首先还是有些关于计算机解决问题的思路问题,我发现很多时候解决问题没有思路,其实可能在别人眼里是很简单的问题,但是自己翻来覆去就是没有思路,分析一下还是觉得自己这方面知识不够的原因,有的事情如果能了解计算机原理的话,思路就不会那么窄了,也就是说知道了他内部是怎么运作的,在思考问题的时候,就不会觉得束手无策了。

那么今天还是继续昨天的练习吧:

习题5:更多的变量和打印

本章讲述的是一个叫“格式化字符串”的东西,字符串是个很好用的东西,用“”双引号引起来的内容就称为字符串,字符串有很多作用,包括输出、写入文件、与服务器交互等,本节练习将教会我们创建包含变量的字符串。

代码如下:

my_name = 'Mc'

my_age = 25 # not a lie

my_height = 170 # meters

my_weight = 65 # kilograms

my_eye = 'black'

my_teeth = 'white'

my_hair = 'black'

print "Let's talk about %s." % my_name

print "He's %d meters tall." % my_height

print "He's %d kilograms heavy." % my_weight

print "Actually that's not too heavy."

print "He's got %s eyes and %s hair." % (my_eye, my_hair)

print "His teeth are usually %s depending on the coffee." % my_teeth

# this line is tricky,try to get it excatly right

print "If I add %d, %d and %d I get %d." % (my_age, my_height, my_weight, my_age + my_height + my_weight)

可以看到对于字符型,字符串内的变量是%s,对于数字型则是%d,也就是说"my name is %s"这个字符串就属于格式化字符串,其中使用专门的格式和语法(%s)把变量的内容放到字符串内,格式化字符(如%s)是将变量内容转换为格式化字符对应的类型,然后放入字符串内,比如%s就是使用str转换任意Python对象,另外还有%r这样的,使用repr类型进行转换。

在多个格式化字符时,变量格式应该是%(变量1,变量2...),也就是用括号包围,逗号分隔,需要注意的是多个格式化字符时,数目必须和变量数目一致,多了少了都会报错。

关于格式化字符,有很多,我这里找了两个别人写的博客,直接放地址吧:

Python:字符串格式化

python格式化字符串和转义字符

另外也可见,python里不止可以用%加特定字符来代替变量,也可以在引入Template(from string import Template)用$加上变量名称,再使用substitute函数直接指向变量,而且还支持数组类型的变量,这种情况称为模板字符串。

更多关于Template见:python的Template使用指南

注意事项:问题回答部分强调了变量名以数字开头的是错误的,应以字母作为开头,下划线的问题上一个习题已经说过了,就不赘述了。

习题总结:本节练习主要内容是格式化字符串,也就是说在字符串内使用特别的代码,让python可以识别,并自动将对应的变量转换格式后替代到对应的位置,在大学学习C语言的时候也有同样的格式化字符串,个人认为其实际意义就是可以使字符串的内容不再固定化,而是通过变量可以使字符串内容进行改变。

另外也通过这一节认识到了Python变量的类型,诸如str、repr、decimal(%d)、int(%i)等,相信未来通过本书还会就变量类型深入了解的。

习题6:字符串(string)和文本

本节并没有将太多新东西,需要注意的就是字符串内包含字符串的内容:

x = “字符串”

print “这是一个 %s” % x

另外还有“+”作为字符串连接运算符的使用:

x = “字符串左”

y = “字符串右”

print x + y

另外还讲了%r的作用,%r主要用于debug,他会显示变量的原始数据,而其他格式符则主要用于向用户输出。

另外“”和‘’作用是一样的,都是定义字符串,怎么用是风格问题,不需要太纠结。

习题7:更多打印

本节属于复习性质,把前面学过关于打印的代码都重新敲一边,但是多了一些新东西:

print "." * 10

简单的理解就是打印10次"."字符串,换做"asd",那就是乘10的"asd"。

还有用“,”逗号连接两个print:

print "Cheese",

print "Burger"

打出来是Cheese Burger,去掉逗号那么就是两行字符串,目测逗号连接print就是在同一行打印,多个print命令间用一个空格隔开。

网上搜索的解释是说print默认在最后加上换行符,而加逗号之后就会变成空格。感觉这个解释更靠谱易懂,对比起来自己弱爆了。

最后今天就到这结束了吧。。

今天总结:昨天睡的太晚了,现在有点迷糊,做三个简单的练习就到这吧,实际上花的时间也才一个小时左右,而且大部分时间还是在码字,今日的练习还是print,但是print不是重点,字符串各种操作才是重点,昨天自己讲过字符串是提供交互的重要工具,那么这只是一个模糊的概念,真正熟知操作方法才是重点,这几节练习(包括后面还没有做的几节习题)就围绕字符串的各种操作做文章,同时也是快速进入Python编程的一个方法,总的来说都属于初级基本操作,但也不能小觑,忽视了基本的东西,是没有办法在更高级的层面上走的太远的,这也是各行各业最基本的原则啊!

那么今天就到这吧。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: