Python语言特色集锦

1、Python中的大整数运算

大数运算,在C/C++中需要自己实现,在JAVA中有BigInteger可以很快处理大整数运算。在Python中,大整数运算显得尤其简单,不用考虑溢出!

#大整数运算测试
bignum01 = 987654321098765432109876543210
bignum02 = 123456789012345678901234567890

print('a+b = {0}'.format(bignum01 + bignum02))

print('a-b = {0}'.format(bignum01 - bignum02))

print('a*b = {0}'.format(bignum01 * bignum02))

print('a/b = {0}'.format(bignum01 / bignum02))

print('a%b = {0}'.format(bignum01 % bignum02))

运行之,结果如下:

Python在大型运算的时候低效吗 python大数任意运算_Python

2、python的缩进

首行需要顶格,即无缩进;

":"(英文冒号)标记一个新的层,相同层保持相同的缩进

一个层次缩进建议4个空格(非强制),可以空格和tab符(键)缩进,空格和tab符显示都是空白,IDLE的tab符默认4个空格(在Options选项下),参见下图:

Python在大型运算的时候低效吗 python大数任意运算_Python在大型运算的时候低效吗_02

对于字典、列表等变量赋值语句,字典、列表内部的换行的缩进可以是任意的,参见下例:

#缩进测试
s = [10,20,
30,40,
     50]
print(s) #输出:[10, 20, 30, 40, 50]

但为易读,建议不缩进,或缩进相同。

3、python的变量

python的变量就是对一个特定对象的引用(或绑定),不同的变量可以引用同一个对象,若不同的变量引用同一个对象,用id()函数获取这些变量在内存中的地址就会是是相同的。对象的类型必须是明确的,而所有对象首先必须要先能确定类型(解析器能够判断,例如对象2知道自己的类型是int),a = 2这样的赋值才是有意义,像单纯一句 d = c 这样的变量引用是错误的,因为解释器无法在其作用域中判断出对象c的类型(若先有c = 3,再 d = c 则可)。类型属于对象而不是变量名,所以无需指明变量的类型。如:

Python在大型运算的时候低效吗 python大数任意运算_Python_03

Python变量的认识理解 

4、Python中交换两个变量的值

假设
x = 10
y = 20

法一:常规方式: 创建临时变量,并交换
临时变量 temp ,将 x 的值存储在 temp 变量中,接着将 y 值赋给 x,最后将 temp 赋值给 y 变量。
temp = x
x = y
y = temp

法二:python特有的,利用元组赋值
x, y = y, x

关于元组赋值,参见“Python赋值语句的多种形式 

5、在 Python 里可以在一行语句里同时操作多个变量,如:
#在一行语句里同时操作多个变量
author, reader = '张作者', '李读者'
print(reader) #输出:李读者

6、以星号(*)开头的变量名,能接收若干个值
# 以星号(*)开头的变量名
seq = [1,2,3,4]
a,b,c,d = seq
print(a,b,c,d) #输出:1 2 3 4
a,*b= seq
print(b) #输出: 2 3 4
a,*b,c= seq
print(b) #输出: 2 3 

可参见