因为最近报名了学习linux运维的课程,所以老师虽然有讲Pyton,但是偏运维的多一些,但是个人觉得Python是一门很有趣的语言,相比之前学过的C和JAVA要易上手很多。所以决定,继续深入学习一下。
2016/11/2 日记
一、小程序
2016/11/2、源码:
#!/usr/bin/python
# _*_ coding:utf8 _*_
#Filename:以正确的宽度在居中的"盒子"内打印一个句子
#
sentence=raw_input("Sentence:")
screen_width=80
text_width=len(sentence)
box_width=text_width+6
left_margin=(screen_width-box_width)//2
print
print' '*left_margin+'+' +'-'*(box_width-2) + '+'
print' '*left_margin+'|' +' '*(box_width-2) + '|'
print' '*left_margin+'|' +' '*2 + sentence +' '*2+'|'
print' '*left_margin+'|' +' '*(box_width-2) + '|'
print' '*left_margin+'+' +'-'*(box_width-2) + '+'
print
程序运行截图:
[root@localhost python_test]# vim box.py
[root@localhost python_test]# python box.py
Sentence:hello money
+---------------+
| |
| hello money |
| |
+---------------+
[root@localhost python_test]# vim box.py
[root@localhost python_test]# python box.py
Sentence:hello money
+-------------------+
| |
| hello money |
| |
+-------------------+
[root@localhost python_test]# vim box.py
第一次运行的时候,我发现没有对齐,最后查看源码,发现了问题。跟自己定义的box长度有很大的关系,最后改后就可以正常输出了。
2016/11/3
1.1源码:
#!/usr/bin/python
2 #_*_ coding:utf8 _*_
3 #Object:电话本的查询,与字典相关
4 #
5 people={
6 'Alice':{
7 'phone':'2341',
8 'addr':'Foo drice 23'
9 },
10 'Beth':{
11 'phone':'9102',
12 'addr':'Bar street 42'
13 },
14 'Cecil':{
15 'phone':3158,
16 'addr':'Baz avenue 90'
17 }
18 }
19 labels={
20 'phone':'phone number',
21 'addr':'address'
22 }
23 name=raw_input('Name: ')
24 request=raw_input('Phone number(p) or address (a)?')
1.2 运行结果
注:在字典中如果用copy命令,比如将字典a复制给b。如果b中如果只是将以前的值覆盖掉,a不会改变,如果是在只是修改字典中的某些值,则a也会发生改变。所以,我们需要b=deepcopy(a) 。