《Python简明教程》

关于Python

1.Python 不需要将其编译成二进制码。你只需要直接从源代码 运行 该程序。在程
序内部,Python 会将源代码转换为称为字节码的中间形式,尔后再转换成你的电脑所使用的
语言,并运行它。实际上,这一流程使得 Python 更加易于使用,你不必再担心该如何编译程
序,或如何保证适当的库被正确的链接并加载等等步骤。这也同样使得 Python 程序更便携且

易于迁移。

2.通过 Python 来运行的你的程序有两种方法——使用交互式解释器提示符直接运行一个源代

码文件。

基础

1.记住单引号括起的字符串和双引号括起的字符串是一样的——它们不存在任何区别。

2.用format()进行格式化方法:Python 中 format 方法所做的事情便是将每个参数值替换至格式所在的位置

age = 20
name = 'Swaroop'
print('{0} was {1} years old when he wrote this book'.format(name, age))

print('Why is {0} playing with that python?'.format(name))

OR

age = 20
name = 'Swaroop'
print('{} was {} years old when he wrote this book'.format(name, age))

print('Why is {} playing with that python?'.format(name))

# 对于浮点数 '0.333' 保留小数点(.)后三位
print('{0:.3f}'.format(1.0/3))
# 使用下划线填充文本,并保持文字处于中间位置
# 使用 (^) 定义 '___hello___'字符串长度为 11
print('{0:_^11}'.format('hello'))
# 基于关键词输出 'Swaroop wrote A Byte of Python'

print('{name} wrote {book}'.format(name='Swaroop', book='A Byte of Python'))


3.用end指定空白结尾:

print('a', end='')

print('b', end='')

得到:

ab

指定空格结尾:

print('a', end=' ')
print('b', end=' ')

print('c')

得到:

a b c

(print默认以新一行\n结尾)


4.通过转义序列(Escape Sequence)来通过 \ 指定单引号

\n 表示新的一行的开始

\t表示制表符

一个放置在末尾的反斜杠表示字符串将在下一行继

续,但不会添加新的一行,如:

"This is the first sentence. \

This is the second sentence." 实际上表示

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

5.如果你需要指定一些未经过特殊处理的字符串,比如转义序列,那么你需要在字符串前增加

r 或 R 来指定一个 原始(Raw) 字符串。下面是一个例子:

r"Newlines are indicated by \n"


在处理正则表达式时应全程使用原始字符串。否则,将会有大量 Backwhacking 需要处

理。举例说明的话,反向引用可以通过 '\\1' 或 r'\1' 来实现。


变量

1.如何编写 Python 程序

从今以后,保存和运行 Python 程序的标准步骤如下:
对于 PyCharm 用户
1. 打开 PyCharm。
2. 以给定的文件名创建新文件。
3. 输入案例中给出的代码。
4. 右键并运行当前文件。
注意:每当你需要提供 命令行参数(Command Line Arguments)时,点击 Run -> Edit

Configurations 并在 Script parameters: 部分输入相应参数,并点击 OK 按钮:


2.逻辑行与物理行

物理行(Physical Line)是你在编写程序时 你所看到 的内容

逻辑行(Logical Line)是 Python 所看到 的单个语句。Python 会假定每一 物理行 会对应一个 逻辑行

Python 之中暗含这样一种期望:Python 鼓励每一行使用一句独立语句从而使得代码更加可

读。

强烈建议你对于每一行物理行最多只写入一行逻辑行。这个观点就是说你不应该使

用分号。实际上,我从未在 Python 程序中使用、甚至是见过一个分号。

如果你有一行非常长的代码,你可以通过使用反斜杠将

其拆分成多个物理行。这被称作显式行连接(Explicit Line Joining)

s = 'This is a string. \
This continues the string.'

print(s)


输出:

This is a string. This continues the string.

在某些情况下,会存在一个隐含的假设,允许你不使用反斜杠。这一情况即逻辑行以括号开
始,它可以是方括号或花括号,但不能是结束括号。这被称作 隐式行连接(Implicit Line

Joining)。你可以在后面当我们讨论列表(List)的章节时了解这一点

缩进

1.空白区在各行的开头非常重要。这被称作 缩进
(Indentation)。在逻辑行的开头留下空白区(使用空格或制表符)用以确定各逻辑行的缩

进级别,而后者又可用于确定语句的分组。这意味着放置在一起的语句必须拥有相同的缩进。

每一组这样的语句被称为 块(block)

使用四个空格来缩进。这是来自 Python 语言官方的建议。

Python 将始终对块使用缩进,并且绝不会使用大括号。


运算符与表达式

1. 3+5 则输出 8 。 'a' + 'b' 则输出 'ab' 。


控制流

1.要记住 elif 和 else 部分都是可选的。一个最小规模且有效的 if 语句是这样的:
if True:

print('Yes, it is true')


2.range 函数生成这一数字序列,range(1,5) 将输出序列 [1, 2, 3, 4] 。range(1,5,2) 将会输出 [1, 3] 。

range() 每次只会生成一个数字,如果你希望获得完整的数字列表,要
在使用 range() 时调用 list() 。例如下面这样: list(range(5)) ,它将会返回 [0, 1, 2,

3, 4] 。


函数

1.因为在不使用 global 语句的情况下,不可能为一个定义于

函数之外的变量赋值。


2.global 语句用以声明 x 是一个全局变量——因此,当我们在函数中为 x 进行赋值时,这

一改动将影响到我们在主代码块中使用的 x 的值


3.默认参数:你可以通过在函数定义时附加一个

赋值运算符( = )来为参数指定默认参数值。默认参数值应该是不可变的

在函数的参数列表中拥
有默认参数值的参数不能位于没有默认参数值的参数之前。def func(a, b=5) 是有效的,

但 def func(a=5, b) 是无效的。

def func(a, b=5, c=10):
print('a is', a, 'and b is', b, 'and c is', c)
func(3, 7)
func(25, c=24)

func(c=50, a=100)

4.可变参数:当我们声明一个诸如 *param 的星号参数时,从此处开始直到结束的所有位置参数

(Positional Arguments)都将被收集并汇集成一个称为“param”的元组(Tuple)。

类似地,当我们声明一个诸如 **param 的双星号参数时,从此处开始直至结束的所有关键字

参数都将被收集并汇集成一个名为 param 的字典(Dictionary)。


5.文档字符串(Documentation Strings)

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值