因为工作需要,博主最近在学习Python的一些基础知识,不求有多精通,但一些基本的代码还是要看懂才行,在此分享一下这几天整理的学习笔记

#放在行首用于注释该行

多行注释可以使用三引号"""

eg.
"""Sipping from your cup 'til it runneth over,
Holy Grail.
"""

print用于输出

raw_input()接收一个字符串并输出,再等待用户赋值

eg. name = raw_input("What's your name?")

格式化输出

string_1 = "Camelot"
string_2 = "place"
print "Let's not go to %s. 'Tis a silly %s." % (string_1, string_2)

Python语句中一般以新行作为为语句的结束符。

但是我们可以使用反斜杠( \)将一行的语句分为多行显示,如下所示:

total = item_one + \
item_two + \
item_three

from import 导入包内的一个类或一个函数

import 导入一个包

导入包之后,可以通过dir(包名)来查看包内结构

max(num1,num2,...numn) 返回任意个整数或浮点数中的最大值

min(num1,num2,...numn) 返回任意个整数或浮点数中的最小值

abs(num) 返回某个数的绝对值

type(para) 返回当前参数的数据类型,判断形式如type(para) == int

start, end, stride = 1, 6, 2 分别赋值

----标准数据类型----

Numbers(数字)

int(有符号整型)

long(长整型[也可以代表八进制和十六进制])

float(浮点型)

complex(复数)

String(字符串)

List(列表) [] 有序、可变 for in访问的是具体对象

Tuple(元组) ()

Dictionary(字典) {} 无序、可变 for in访问的是键

----算术运算符----

+ - * /

** 幂运算

// 取整除

----比较运算符----

== != < <= > >=

与 and

或 or

非 not

----条件语句----

if condition1:
	command1
elif condition2:
	command2
else:
	command3

----循环语句----

for variable in list_name:
	command
	
for variable in range(len(list_name))
	command

#枚举列表中每一项的索引和值
for index,item in enumerate(list_name)
	print index,item

#	condition不满足时会进入else,也就是说break跳出循环不会进入else
while condition:
	command1
else:
	command2

----函数定义----

def function([parameter]):
	[return]

----进制转换---

bin(num) 十进制转化为二进制 
 oct(num) 十进制转化为八进制 
 hex(num) 十进制转化为十六进制 
 int("num",2) 二进制转化为十进制

----字符串函数&方法----

len(string) 返回字符串字符个数 string.lower() 将字符串内的大写字母小写化 
 string.upper() 将字符串内的小写字母大写化 
 str(var) 将非字符串类型转化为字符串类型 
 string.isalpha() 检查字符串是否只包含英文字母 
 string[1:len(string)] 字符串截取 
 string.split() 分割字符串,返回结果列表list

----datetime常见用法----

datetime.now() 获取当前时间 
 datetime.now().year 获取当前时间的年份 
 datetime.now().month 获取当前时间的月份 
 datetime.now().day 获取当前时间的日份 
 datetime.now().hour 获取当前时间的时 
 datetime.now().minute 获取当前时间的分 
 datetime.now().second 获取当前时间的秒

----列表函数&方法----

cmp(list1,list2) 比较两个列表的元素 
 len(list) 列表元素个数 
 max(list) 返回列表元素最大值 
 min(list) 返回列表元素最小值 
 sum(list) 返回列表所有元素之和 
 list(seq) 将元组转换为列表 
 list.append(obj) 在列表末尾添加新的对象 
 list.count(obj) 统计某个元素在列表中出现的次数 
 list.extend(seq) 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表) 
 list.index(obj) 从列表中找出某个值第一个匹配项的索引位置 
 list.insert(index, obj) 将对象插入列表 
 list.pop(index=list[-1])移除列表中的一个元素(默认最后一个元素),并且返回该元素的值 
 list.remove(obj) 移除列表中某个值的第一个匹配项 
 list.reverse() 反向列表中元素 
 list.sort([func]) 对原列表进行排序 
 item not in list 判断元素item是否在列表list内 
 sorted(list)

sort 与 sorted 区别:

sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。

list 的 sort 方法返回的是对已经存在的列表进行操作,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。

[1, 2, 4] + [4, 5, 6] = [1, 2, 4, 4, 5, 6]
["O"] * 5 = ['O','O','O','O','O']
"---".join(['a','b','c','d']) = 'a---b---c---d'

range用法

01.range(stop) eg. range(6) # => [0,1,2,3,4,5] 
 02.range(start, stop) eg. range(1,6) # => [1,2,3,4,5] 
 03.range(start, stop, step) eg. range(1,6,3) # => [1,4]

列表构造

[x ** 2 for x in range(1, 12) if x % 2 == 0] = [4, 16, 36, 64, 100]

list[start:end:stride]

filter(function, iterable)

filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表。

该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判,然后返回 True 或 False,最后将返回 True 的元素放到新列表中。

①lambda x: x % 3 == 0
②def by_three(x):
    return x % 3 == 0
①②等价

----字典函数&方法----

del dict_name[key_name] 删除键值对

d = {
    "Name": "Guido",
    "Age": 56,
    "BDFL": True
}
print d.items()
# => [('BDFL', True), ('Age', 56), ('Name', 'Guido')]

print d.keys()
# => ['BDFL', 'Age', 'Name']

print d.values()
# => [True, 56, 'Guido']

----类的定义----

class NewClass(object):
    # Class magic here

__init__() 类内构造器

__repr__() 根据提供的格式展示实例

class DiffNewClass(NewClass):
	# Class magic here
	#继承NewClass类

super(DiffNewClass, self) <=> NewClass 表示父类、超类

----文件输入输出----

f = open("output.txt", "w")			只写的方式打开文件
for item in my_list:
    f.write(str(item) + "\n")		将列表每一项写入文件每一行
f.close()							关闭文件
f.read()							读取整个文件
f.readline()						读取文件的一行
f.closed							该属性表示当前文件是否已经关闭

with open("file", "mode") as variable:
    # Read or write to the file
#执行完指令后自动关闭文件