因为工作需要,博主最近在学习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
#执行完指令后自动关闭文件