默认分类··By/蜜汁炒酸奶

《简明 Python 教程》学习笔记- 基本概念

学习起因

最近除了忙着论坛那边,就是忙着攻克Python,都好久没来更新了。今天暂且发出一小部分之前自学时做的笔记吧。假期忽然对脚本语言产生了兴趣,最终选择了这个先学着(其实看了《黑客与画家》后也挺想学学Lisp的,后来看到有那么多分类什么的就暂时放弃了o(>﹏<)o)。之后去了贴吧、知乎等地寻找资源与方法,再大致看了基本教程书籍后最终选择了《简明 Python 教程》作为入门书。 之所以选它是由于之前已经有了一部分编程知识,在学了c、C++、Java的基础后,虽然在编程路上依旧是新人,但毕竟算不上一点也不懂的小白了,而《简明 Python 教程》真正做到了简明扼要,让初入门的我一看便能理解的差不多,感觉这才是我现在需要的那种学习资料,如实它成了我学习Python的第一本书。

学习笔记

一.程序输出print 语句

1通常当你想看变量内容时,你会在代码中使用 print 语句输出。不过在交互式解释器中,你可以用 print 语句显示变量的字符串表示,或者仅使用变量名查看该变量的原始值。

例1-1-1:
>>> myString = 'Hello world!'
>>> print myString
1
2

输出效果: Hello world!

>>> myString
1

输出效果: ‘Hello world!’

例1-1-2:
>>> myString1 = "Hello Python"
>>> print myString1
1
2

输出效果: Hello Python

>>> myString1
1

输出效果: ‘Hello Python’

**注意:**在仅用变量名时,输出的字符串是被用单引号括起来了的。这是为了让非字符串对象也能以字符串的方式显示在屏幕上--即它显示的是该对象的字符串表示,而不仅仅是字符 串本身。引号表示你刚刚输入的变量的值是一个字符串。

print 语句调用str()函数显示对象,而交互式解释器则调用repr()函数来显示对象。

** **

2.下划线(_)在解释器中表示最后一个表达式的值。所以上面的代码执行之后,下划线变量会包含字符串:

例1-2-1:
>>> _
1

输出效果: ‘Hello Python’

  1. print 语句,与字符串格式运算符( % )结合使用,可实现字符串替换功能。其中:

%s 表示由一个字符串来替换,%d 表示由一个整数来替换,%f 表示由一个浮点数来替换。符号 >> 用来重定向输出

例1-3-1:
>>> print "%s is number %d"%("Python",1)
1

输出效果: Python is number 1

**例****1-3-**2:

将输出重定向到标准错误输出

>>> import sys
>>> print >>sys.stderr,'Fatal error:invalid input!'
1
2

输出效果:

Fatal error:invalid input!

**例 ****1-3-**3:将输出重定向到日志文件

logfile = open('/tmp/mylog.txt', 'a')
print >> logfile, 'Fatal error: invalid input!'
logfile.close()
1
2
3

二.程序输入和 内建函数raw_input()

user = raw_input("enter login name")
enter login name root
>>> print "Your Login is:",user
Your Login is:  root
1
2
3
4

三、字符串

1。引号

使用单引号(')

你可以用单引号指示字符串,就如同’Quote me on this’这样。所有的空白,即空格和制表符都照原样保留。

使用双引号(")

在双引号中的字符串与单引号中的字符串的使用完全相同,例如"What’s your name?"。

使用三引号(‘’'或"“”)

利用三引号,你可以指示一个多行的字符串。你可以在三引号中自由的使用单引号和双引号。例如:

'''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
2
3
4
5

2。转义字符()

在一个字符串中,行末的单独一个反斜杠表示字符串在下一行继续,而不是开始一个新的行,如

"This is the first sentence.
This is the second sentence."
1
2

等价于

"This is the first sentence. This is the second sentence."
1
自然字符串

如果你想要指示某些不需要如转义符那样的特别处理的字符串,那么你需要指定一个自

然字符串。自然字符串通过给字符串加上前缀r或R来指定。例如r"Newlines are indicated by n"。

即:

>>> r"Newline are indicated by sn"等价'Newline are indicated by s\n'
1

打印出来:

Newlines are indicated by n
1

例:

>>> s = r"Newlines are indicated by n"
>>> s
1
2

‘Newlines are indicated by \n’

>>> print s
1

Newlines are indicated by n

Unicode字符串

例:

>>> s =u"This's a Unicode string."
>>> s
1
2

u"This’s a Unicode string."

>>> print s
1

This’s a Unicode string.

3.注意事项

字符串是不可变的;

按字面意义级连字符串;

例:

>>> 'What's' 'your name?' "What'syour name?"
1

在Python中没有专门的char数据类型

单引号和双引号字符串是完全相同的

一定要用自然字符串处理正则表达式

四、逻辑行与物理行

物理行是你在编写程序时所看见的。

逻辑行是Python 看见 的单个语句。

Python假定每个 物理行 对应一个 逻辑行 。

多个物理行中写一个逻辑行的例子。它被称为明确的行连接。

有时候,有一种暗示的假设,可以使你不需要使用反斜杠。这种情况出现在逻辑行中使用了圆括号、方括号或波形括号的时候。这被称为暗示的行连接。

建议坚持在每个物理行只写一句逻辑行。仅仅当逻辑行太长的时候,在多于一 个物理行写一个逻辑行。这些都是为了尽可能避免使用分号,从而让代码更加易读。

五、缩进:空格和制表符

在逻辑行首的空白(空格和制表符)用来决定逻辑行的缩进层次,从而用来决定语句的分组。这意味着同一层次的语句必须有相同的缩进。每一组这样的语句称为一个块。

如何缩进

不要混合使用制表符和空格来缩进,因为这在跨越不同的平台的时候,无法正常工作。我 强 烈建议 你在每个缩进层次使用 单个制表符 或 两个或四个空格 。 选择这三种缩进风格之一。更加重要的是,选择一种风格,然后一贯地使用它,即 只 使用这 一种风格。

Preview
Loading comments...
12 条评论
  • comment-avatar

    没研究过,竞赛用的?

    • comment-avatar

      回复 @Phnomi: 不一定,只是感兴趣就去玩了玩

  • comment-avatar

    :neutral: 看起来很麻烦很厉害的样子

    • comment-avatar

      回复 @灰常记忆: 掀起她的盖头,你会发现也不过如此,主要是把一章里的东西比较集中地放在这了,显得就比较麻烦了,一个个小点时还是很容易的,可以考虑去它的官网看看

  • comment-avatar

    挺不错的,支持一下,以后会经常关注该博客,同时欢迎回访!

  • comment-avatar

    py语言还是蛮有意思的 一些环境我也玩过

  • comment-avatar

    还没研究过。

  • comment-avatar

    博主开始研究python了啊。高端了

    • comment-avatar

      回复 @王英学: 嘘~装装X而已,天知地知你知我知,不要告诉别人哦

example
Preview