Python学习笔记:02 基础:变量、整数、字符串、赋值、基本输出、注释、代码块
2014-02-12 20:48
1036 查看
本篇讨论Python的一些基本语法,包括定义变量、使用整数和字符串,为变量赋值,打印到标准输出、注释、代码块几部分。可以在此位置下载本篇的所有代码:
https://code.csdn.net/snippets/188644/master/BasicGrammar.py/raw
注:
* Python是弱类型和无声明的。不需要,也不能够进行形如“String myStr”(C、Java风格)或者“Dim myStr As String”(Basic风格)的声明,甚至不允许只定义参数而不指定类型(例如“Dim myStr”这类语句也不允许)。
* 单引号和双引号都可以表示一个真实的String值,没有区别。
* 双引号中的单引号被理解为单引号字符串,无需转义。单引号中的双引号亦然。
* 单引号中要表示单引号字符串,前面必须加反斜杠“\”转义。双引号中要表示双引号亦然。
* Python编码规范(PEP8,后面介绍)建议一行含空格不要超过120个字符(尽管语法上这是允许的),如果一行过长,可以在多个代码元素之间使用反斜杠,表示将多行理解为一行。
* 多个String之间可以使用加号“+”连接
注:Python本身支持将多行代码放在一行中,以分号分隔。但是Python编码规范(PEP8)不建议这样写代码。
注:
* 字符串和整数之间不能使用加号连接。print命令允许接受多个参数,最终打印输出时,参数之间用逗号分隔。实际打印的时候会在多个参数之间自动加1个空格。
注:
* 与C等语言中的“++”不同,“+=”操作符不会返回一个值。形如“y = x += 1”这样的表达式是非法的。
* 另一种将不同种类型合并成字符串输出的方式就是格式化字符串。使用“%<Formatter>”来在字符串中占位,然后在字符串后面用一个百分号,后跟需要填充的其它类型。Python提供了多种格式化方式,但最常见的是%s,即按照系统的默认方式来将任何值转成字符串,相当于Python中的“str()”函数,类似Java等语言中的“toString”。
注:
* 这里顺便展示了使用多个占位符的方法。这种情况下,百分号后面要用括号来表示,并且参数个数要和占位符数量一致。
将多个变量分别赋值为不同的值:
注:
* 两种赋值方式(加括号不不加)对于最终结果没有影响。
注:
* x为字符串“None”,而y为None值(空值)。
* 当使用print命令打印时,二者效果一样
* 当使用一些操作函数时,字符串可以被正常操作,但None则会报错。
三个单引号“'''”表示块注释
注
* 和 shell 类似,写在文件开头的井号中的内容,如果符合关键字的话,是可以指定一些例如执行环境的信息的
* Python编码规范不建议对于一般注释使用块注释。块注释仅用于Documentation(即说明方法、类等的用途进行说明,最终生成用户的API手册)。PyCharm支持将多行代码进行行注释或去行注释。
应该严格执行缩进,否则会编译出错。
注释也要严格符合缩进,不符合本代码块的缩进会被认为是标志着该代码块的结束。
https://code.csdn.net/snippets/188644/master/BasicGrammar.py/raw
字符串赋值
# String value assignment myStr = "hello" print "String variable 'myStr'" + \ ', which is actually assgined as a value with type "String", now has value: \'' + myStr + '\''
注:
* Python是弱类型和无声明的。不需要,也不能够进行形如“String myStr”(C、Java风格)或者“Dim myStr As String”(Basic风格)的声明,甚至不允许只定义参数而不指定类型(例如“Dim myStr”这类语句也不允许)。
* 单引号和双引号都可以表示一个真实的String值,没有区别。
* 双引号中的单引号被理解为单引号字符串,无需转义。单引号中的双引号亦然。
* 单引号中要表示单引号字符串,前面必须加反斜杠“\”转义。双引号中要表示双引号亦然。
* Python编码规范(PEP8,后面介绍)建议一行含空格不要超过120个字符(尽管语法上这是允许的),如果一行过长,可以在多个代码元素之间使用反斜杠,表示将多行理解为一行。
* 多个String之间可以使用加号“+”连接
多行写在一行
print "You can"; print "put multiple code lines into one"
注:Python本身支持将多行代码放在一行中,以分号分隔。但是Python编码规范(PEP8)不建议这样写代码。
整数赋值
# Integer value assignment x = 1 print "Integer value assignment:", x
注:
* 字符串和整数之间不能使用加号连接。print命令允许接受多个参数,最终打印输出时,参数之间用逗号分隔。实际打印的时候会在多个参数之间自动加1个空格。
整数类型自增
# Integer value self increase x += 1 print 'Integer value self accumulate 1: %s' % x x += 2 print 'Integer value self accumulate 2: %s' % x
注:
* 与C等语言中的“++”不同,“+=”操作符不会返回一个值。形如“y = x += 1”这样的表达式是非法的。
* 另一种将不同种类型合并成字符串输出的方式就是格式化字符串。使用“%<Formatter>”来在字符串中占位,然后在字符串后面用一个百分号,后跟需要填充的其它类型。Python提供了多种格式化方式,但最常见的是%s,即按照系统的默认方式来将任何值转成字符串,相当于Python中的“str()”函数,类似Java等语言中的“toString”。
连续、多重赋值
将多个变量赋值为同一个值:# Continuously value assignment x = y = z = 1 print 'Continuously value assignment: x = %s, y = %s, z = %s' % (x, y, z)
注:
* 这里顺便展示了使用多个占位符的方法。这种情况下,百分号后面要用括号来表示,并且参数个数要和占位符数量一致。
将多个变量分别赋值为不同的值:
# Multiple value assignment x, y, z = 1, 2, 'hello' print 'Multiple value assignment: x = %s, y = %s, z = %s' % (x, y, z) (x, y, z) = (1, 2, 'hello') print 'Multiple value assignment (syntax 2): x = %s, y = %s, z = %s' % (x, y, z)
注:
* 两种赋值方式(加括号不不加)对于最终结果没有影响。
空值
Python中有一个特殊的值“None”,类似Java中的空值。对空值的操作会产生类似空指针一样的错误,当然Python并不会报NullPointer这样的错误,因为None也被认为是一个对象,只是比较特殊,很多功能都没有。x = 'None' y = None print 'The String "None" is:', x, ', while None value is:', y print 'Length of String "None" is:', len(x) print 'Length of None value is:', len(y)
注:
* x为字符串“None”,而y为None值(空值)。
* 当使用print命令打印时,二者效果一样
* 当使用一些操作函数时,字符串可以被正常操作,但None则会报错。
注释
单个井号“#”表示单行注释。三个单引号“'''”表示块注释
注
* 和 shell 类似,写在文件开头的井号中的内容,如果符合关键字的话,是可以指定一些例如执行环境的信息的
* Python编码规范不建议对于一般注释使用块注释。块注释仅用于Documentation(即说明方法、类等的用途进行说明,最终生成用户的API手册)。PyCharm支持将多行代码进行行注释或去行注释。
缩进和代码块
Python 中以缩进而不是花括号来标记代码块。If语句、函数均是如此。缩进应当是4个空格,不能是tab。应该严格执行缩进,否则会编译出错。
注释也要严格符合缩进,不符合本代码块的缩进会被认为是标志着该代码块的结束。
相关文章推荐
- 【零基础入门学习Python笔记003】插曲之变量和字符串|课习题答案
- Python学习笔记(一)--Python基础知识:变量、数据类型、模块与字符串
- 编程小白的第一本 python 入门书 学习笔记02 第三章 变量与字符串
- javascript学习笔记(一):基础、输出、注释、引用、变量、数据类型
- Python 基础学习笔记6- 多变量赋值
- 零基础 入门学Python-学习笔记第二讲(变量与字符串)
- Python学习笔记02 变量和程序的编写
- python 变量赋值引用的一点学习笔记
- java基础学习笔记原始类型变量赋值与非原始变量赋值
- Python学习笔记(一):基础语法、变量类型、运算符(快速入门篇)
- lua学习笔记---注释,变量,字符串
- 零基础入门学习Python(3)--小插曲之变量和字符串
- Python学习笔记2(02-03):变量+运算符和表达式
- python基础教程学习笔记 第三章 字符串
- python基础教程学习笔记 —字符串
- python基础学习之变量和字符串
- Python学习笔记--变量和赋值
- Swift语法基础:8 - Swift的常量, 变量, 标注, 命名, 输出, 注释, 分号, 整数, 浮点数, 类型安全和类型推测说明
- 零基础入门学习Python(3)--小插曲之变量和字符串
- JavaScript基础学习笔记(二)——JavaScript 注释、JavaScript 变量、JavaScript运算符