设为首页 收藏本站
查看: 623|回复: 0

[经验分享] 《简明python教程 》总结(二)-- 字符串、对象、控制流

[复制链接]

尚未签到

发表于 2017-5-4 09:59:26 | 显示全部楼层 |阅读模式
字符串
字符串是 字符的序列 。字符串基本上就是一组单词。
单引号(')、双引号(") 、三引号('''或""") 、转义符(\)
●单引号(') 与 双引号(") 作用相同
●三引号('''或""")
利用三引号,可以指示一个多行的字符串。你可以在三引号中自由的使用单引号和双
引号。例如:
'''This is a multi-line string. This is the first line.
This is the second line.
"What's your name?," I asked.
He said "Bond, James Bond."
'''
●转义符
1. 用\'来指示单引号——注意这个反斜杠。现在你可以把字符串表示为'What\'s your name?'。
2. 在一个字符串中,行末的单独一个反斜杠表示字符串在下一行继续,而不是开始一个新的行
例如:
"This is the first sentence.\
This is the second sentence."
等价于"This is the first sentence. This is the second sentence."

●自然字符串
如果你想要指示某些不需要如转义符那样的特别处理的字符串,那么你需要指定一个自然字符串。自然字符串通过给字符串加上前缀r或R来指定。例如r"Newlines are indicated by \n"。
常用:一定要用自然字符串处理正则表达式。否则会需要使用很多的反斜杠。例如,后向引用符可以写成'\\1'或r'\1'

●Unicode字符串
Python允许处理Unicode文本——只需要在字符串前加上前缀u或U。例如,u"This is a Unicode string."。(以unicode编码方式 处理字符串)
记住,在你处理文本文件的时候使用Unicode字符串特别是当你知道这个文件含有用非英语的语言写的文本。


对象
Python把在程序中用到的任何东西都称为 对象 。
每一个东西包括数、字符串甚至函数都是对象这一点来说,Python是极其完全地面向对象的。

变量
使用变量时只需要给它们赋一个值。不需要声明或定义数据类型

示例:
# Filename : var.py
i = 5
print i
i = i + 1
print i
s = '''This is a multi-line string.
This is the second line.'
''
print s


逻辑行与物理行
物理行是在编写程序时所 看见 的。逻辑行是Python 看见 的单个语句。Python假定每个 物理行 对应一个 逻辑行 。

i = 5
print i
为两个 物理行 与 两个 逻辑行

i = 5; print i
为一个物理行 与两个逻辑行

s = 'this is a\
good day'
为 两个物理行与一个逻辑行


缩进
空白在Python中是重要的。事实上行首的空白是重要的。它称为缩进。在逻辑行首的空白(空格和制表符)用来决定逻辑行的缩进层次,从而用来决定语句的分组。
建议:每个层次用 单个 制表符 来控制

运算符
运算符名称说明例子
+两个对象相加3 + 5得到8。'a' + 'b'得到'ab'
*两个数相乘或是返回一个被重复
若干次的字符串
2 * 3得到6。'la' * 3得到'lalala'
**返回x的y次幂3 ** 4得到81(即3 * 3 * 3 * 3)
//取整除返回商的整数部分4 // 3.0得到1.0
%取模返回除法的余数8%3得到2。-25.5%2.25得到1.5
按位反转x的按位翻转是-(x+1)~5得到-6。

输出
示例
#!/usr/bin/python
# Filename: expression.py
length = 5
breadth = 2
area = length * breadth
print 'Area is', area
print 'Perimeter is', 2 * (length + breadth)

输出:
Area is 10
Perimeter is 14

分析:
尽管我们没有在'Area is'和变量area之间指定空格,Python自动在那里放了一个空格,这样我们就可以得到一个清晰漂亮的输出,而程序也变得更加易读(因为我们不需要担心输出之间的空格问题)。

控制流
if --elif--else
示例
#!/usr/bin/env python
#filename if.py

number = 23
guess = int(raw_input('enter the number:'))

print guess

if guess == number:
print 'ok'
elif guess == 13:
print 'equil 13'
else:
print 'fail'

分析:
对C/C++成员的提醒 if--elif--else 后需带
raw_input 作用:raw_input函数提供一个字符串,这个字符串被打印在屏幕上,然后等待用户的输入。一旦我们输入一些东西,然后按回车键之后,函数返回输入。对于raw_input函数来说是返回一个字符串。我们通过int把这个字符串转换为整数,并把它存储在变量guess中。(假设这个字符串含有一个有效的整数文本信息)

for 循环
for i in range(1,5)等价于for i in [1, 2, 3, 4] 包含1,不包含5
同C/C++ for(int i = 1; i < 5; i++)
for i in rang(1,5,2) 等价 for i in [1,3]


for i in range(1,5):
print i

结果:
1
2
3
4

while..break..continue
#!/usr/bin/python
# Filename: continue.py
while True:
s = raw_input('Enter something : ')
if s == 'quit':
break
if len(s) < 3:
continue
print 'Input is of sufficient length'
# Do other kinds of processing here...



len(str)作用: 返回 字符串str的长度

目标:认识 raw_input() , rang(), len()等函数, while..break..continue ,if ..elif..else, for 等控制流语句


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-372848-1-1.html 上篇帖子: java与python多线程wait,notify操作比较 下篇帖子: Twisted的Deffered就是用CPS写Python程序?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表