python基础与回顾
python基础与回顾
- python2和python3
- print 函数
- python的标识符
- 变量类型
- Python 元组
- Python运算符
- Python位运算符
- Python成员运算符
- Python身份运算符
- python语句
- for语句
- Python math 模块提供了许多对浮点数的数学运算函数。
- 随机函数
- python列表函数
- 元组
- 删除元组
- 字典
- Python 日期和时间
- 读取键盘输入
- 读取文件
- python的内置函数
- python垃圾回收
- 访问私有属性
- python和javascript的区别
python2和python3
print 函数
如果 Python2.x 版本想使用使用 Python3.x 的 print 函数,可以导入 future 包,该包禁用 Python2.x 的 print 语句,采用 Python3.x 的 print 函数:
导入__future__ 包后,print list 被禁用。可以使用print (list) # 使用Python3.x 的 print 函数
python的标识符
- 在 Python 里,标识符由字母、数字、下划线组成。不能以数字开头
- 以下划线开头的标识符是有特殊意义的。以单下划线开头 _foo 的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx import * 而导入。
- 以双下划线开头的 __foo 代表类的私有成员,以双下划线开头和结尾的 foo 代表 Python 里特殊方法专用的标识,如 init() 代表类的构造函数。
- \)将一行的语句分为多行显示
- 语句中包含 [], {} 或 () 括号就不需要使用多行连接符。如下实例:
days = ['Monday', 'Tuesday', 'Wednesday','Thursday', 'Friday']
函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。
变量类型
Python有五个标准的数据类型:
Numbers(数字)
String(字符串)
List(列表)
Tuple(元组)
Dictionary(字典)
Python支持四种不同的数字类型:
int(有符号整型)
long(长整型,也可以代表八进制和十六进制)
float(浮点型)
complex(复数)
加号(+)是字符串连接运算符,星号(*)是重复操作。如下实例:
print str * 2 # 输出字符串两次
print str + "TEST" # 输出连接的字符串
Python 列表截取可以接收第三个参数,参数作用是截取的步长,以下实例在索引 1 到索引 4 的位置并设置为步长为 2(间隔一个位置)来截取字符串:
list = [1,2,3,4] ; list[1:3:2]; 结果 2
Python 元组
元组用 () 标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。
以下是元组无效的,因为元组是不允许更新的。而列表是允许更新的:
tuple = ( 'runoob', 786 , 2.23, 'john', 70.2 )
list = [ 'runoob', 786 , 2.23, 'john', 70.2 ]
tuple[2] = 1000 # 元组中是非法应用
list[2] = 1000 # 列表中是合法应用
Python运算符
** 幂 - 返回x的y次幂 a**b 为10的20次方, 输出结果 100000000000000000000
// 取整除 - 返回商的整数部分(向下取整) >>> 9//2 >>> 4
Python位运算符
a = 0011 1100b = 0000 1101-----------------a&b = 0000 1100a|b = 0011 1101a^b = 0011 0001~a = 1100 0011<< 左移动运算符:运算数的各二进位全部左移若干位,由 << 右边的数字指定了移动的位数,高位丢弃,低位补0。 a << 2 输出结果 240 ,二进制解释: 1111 0000
>> 右移动运算符:把">>"左边的运算数的各二进位全部右移若干位,>> 右边的数字指定了移动的位数 a >> 2 输出结果 15 ,二进制解释: 0000 1111
Python成员运算符
in
not in
Python身份运算符
is is 是判断两个标识符是不是引用自一个对象 x is y, 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 Falseis not is not 是判断两个标识符是不是引用自不同对象 x is not y , 类似 id(a) != id(b)。如果引用的不是同一个对象则返回结果 True,否则返回 False。
is 与 == 区别:
is 用于判断两个变量引用对象是否为同一个(同一块内存空间), == 用于判断引用变量的值是否相等。
>>> b = a[:]
>>> b is a
False
>>> b == a
True
python语句
在 python 中,while … else 在循环条件为 false 时执行 else 语句块:
count = 0
while count < 5:print count, " is less than 5"count = count + 1
else:print count, " is not less than 5"
for语句
1.for letter in 'Python': # 第一个实例print("当前字母: %s" % letter)fruits = ['banana', 'apple', 'mango']
for fruit in fruits: # 第二个实例print ('当前水果: %s'% fruit)2.fruits = ['banana', 'apple', 'mango']
for index in range(len(fruits)):print ('当前水果 : %s' % fruits[index])3.在 python 中,for … else 表示这样的意思,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。
Python math 模块提供了许多对浮点数的数学运算函数。
Python cmath 模块包含了一些用于复数运算的函数。
cmath 模块的函数跟 math 模块函数基本一致,区别是 cmath 模块运算的是复数,math 模块运算的是数学运算。
随机函数
choice(seq) 从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数randrange ([start,] stop [,step]) 从指定范围内,按指定基数递增的集合中获取一个随机数,基数默认值为 1random() 随机生成下一个实数,它在[0,1)范围内。seed([x]) 改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择seed。
python列表函数
cmp(list1, list2)比较两个列表的元素len(list)列表元素个数
元组
元组中只包含一个元素时,需要在元素后面添加逗号 tup1 = (50,)
元组中的元素值是不允许修改的,但我们可以对元组进行连接组合,
删除元组
元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组
del tup
与字符串一样,元组之间可以使用 + 号和 * 号进行运算。这就意味着他们可以组合和复制,运算后会生成一个新的元组。
字典
1.不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住,
dict = {'Name': 'Zara', 'Age': 7, 'Name': 'Manni'} print "dict['Name']: ", dict['Name']
2.键必须不可变,所以可以用数字,字符串或元组充当,所以用列表就不行,如下实例:
dict = {['Name']: 'Zara', 'Age': 7} print "dict['Name']: ", dict['Name']
//报错
Python 日期和时间
-
time.time()用于获取当前时间戳, 当前时间戳为: 1459994552.51
-
获取当前时间
localtime = time.localtime(time.time())print "本地时间为 :", localtime本地时间为 : time.struct_time(tm_year=2016, tm_mon=4, tm_mday=7, tm_hour=10, tm_min=3, tm_sec=27, tm_wday=3, tm_yday=98, tm_isdst=0)time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
dir() 函数一个排好序的字符串列表,内容是一个模块里定义过的名字。
返回的列表容纳了在一个模块里定义的所有模块,变量和函数。如下一个简单的实例:
读取键盘输入
raw_input([prompt]) 函数从标准输入读取一个行,并返回一个字符串(去掉结尾的换行符):
str = raw_input("请输入:")
print "你输入的内容是: ", strinput([prompt]) 函数和 raw_input([prompt]) 函数基本类似,但是 input 可以接收一个Python表达式作为输入,并将运算结果返回。
str = input("请输入:")
请输入:[x*5 for x in range(2,10,2)]
你输入的内容是: [10, 20, 30, 40]
读取文件
fo = open("foo.txt", "w")
print "文件名: ", fo.name
print "是否已关闭 : ", fo.closed
print "访问模式 : ", fo.mode
print "末尾是否强制加空格 : ", fo.softspace
python的内置函数
- all() 函数用于判断给定的可迭代参数 iterable 中的所有元素是否都为 TRUE,如果是返回 True,否则返回 False。
元素除了是 0、空、None、False 外都算 True。
-
ord() ord(‘a’) 97
-
any() 函数用于判断给定的可迭代参数 iterable 是否全部为 False,则返回 False,如果有一个为 True,则返回 True。
元素除了是 0、空、FALSE 外都算 TRUE。 -
eval
x = 7eval( '3 * x' ) -
isinstance() isinstance (a,int) True
python垃圾回收
一个内部跟踪变量,称为一个引用计数器。
当对象被创建时, 就创建了一个引用计数, 当这个对象不再需要时, 也就是说, 这个对象的引用计数变为0 时, 它被垃圾回收。但是回收不是"立即"的, 由解释器在适当的时机,将垃圾对象占用的内存空间回收。
访问私有属性
class Runoob:__site = "www.runoob.com"runoob = Runoob()
print runoob._Runoob__site__foo__: 定义的是特殊方法,一般是系统定义名字 ,类似 __init__() 之类的。_foo: 以单下划线开头的表示的是 protected 类型的变量,即保护类型只能允许其本身与子类进行访问,不能用于 from module import *__foo: 双下划线的表示的是私有类型(private)的变量, 只能是允许这个类本身进行访问了。
python和javascript的区别
Javascript的面向对象是基于原型(prototype)的, 对象的继承是由原型(也是对象)创建出来的,由原型对象创建出来的对象继承了原型链上的方法。而Python则是中规中矩的基于类(class)的继承,并天然的支持多态(polymophine)。
Javascript的数据类型比较简单,有object、string、boolean、number、null和undefined,总共六种
Python中一切均为对象,像module、function、class等等都是。
Python有五个内置的简单数据类型bool、int、long、float和complex,另外还有容器类型,代码类型,内部类型等等。
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
