Python学习笔记
来源:互联网 发布:2015家电市场销售数据 编辑:程序博客网 时间:2024/06/05 09:37
Python学习笔记 - 基本类型
根据廖雪峰的Python教程做成的笔记,其中不包含全部知识点,仅是重点或是容易发生混淆或者忘记的部分。
输入输出
- 输入
name = input('Please enter your name:')
- 输出
a = 1024b = 768print('%d * %d = %d' % (a, b, a * b))
list和tuple
- list:可变数组
classmates = ['huang.lei', 'huang.bo', 'sun.honglei']
- tuple:也叫元组,是不可变数组
month = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
特点
list和C++中的vector从功能上比较相似,但比vector更加灵活,
注意:list/tuple中的元素可以是不同类型的。
tableA = ['Apple', 123, True]tableB = ['python', 'golang', ['asp', 'php'], 'C++']print(len(tableA))print(len(tableB))
常用方法
- len():返回list、tuple的元素个数。
lenOfMonth = len(month)print(lenOfMonth)
- 元素取得
index为负数的场合表示访问数组的倒数第n个元素。
m = month[0] # 访问第一个元素m = month[-1] # 访问最后一个元素,倒数第二个元素同理
- append():追加元素
classmates.append('liu.bang')
- insert():插入
classmates.insert(1, 'li.jie') # 插入 li.jie 到第二个位置
- pop():
classmates.pop() # 删除末尾元素classmastes.pop(i) # 删除指定位置的元素
- sort():排序
val = [2,3,1,5,4]val.sort() # val = [1,2,3,4,5]
条件判断
if
不同于其他语言,python用elif
表示else if
。 pass
表示无处理。
age = 6if age >= 18: print('audlt')elif age >= 6: # 注意这里是elif,不是else if print('teenager')else print('kid')
循环
for
基本语法
L = [1,2,3,4,5]for x in L: if x == 1: continue print(x)
常用方法
- range():生成序列
# 生成0 - 9的序列for x in range(10) print(x)# 生成1 - 100的序列for y in range(1, 101) print(y)
while
用法基本同C++一样
sum = 0n = 99while n > 0 sum = sum +n n = n - 2print(sum)
dict和set
dict:
字典,实则就是C++中的map
d = {'Michael': 95, 'Bob': 80, 'Tom': 85}d['Tracy'] = 90 # 添加元素d.pop('Bob') # 删除元素print('Tom')
dict常用方法:
- 判断key是否存在
方法一:
d = {'Michael': 95, 'Bob': 80, 'Tom': 85}if 'Tom' in d: print('exist')else: print('no exist')
方法二:
isTomExist = d.get('Tom')isBobExist = d.get('Bob', -1)if (isTomExist == None) or (isBobExist == -1): print('Error!')else: print('Success!')
set:
类似C++中的set
s = set([1, 2, 3])s.add(4) # OKs.add(2) # 无效,set中没有重复的值s.remove(2) # 删除元素
set常用方法:
- 取交集
s1 = set([1,2,3])s2 = set([2,3,4])s = s1 & s2print(s) # s = {2,3}
- 取并集
s1 = set([1,2,3])s2 = set([2,3,4])s = s1 | s2print(s) # s = {1,2,3,4}
字符串操作
- lower():字符串变成小写
str = 'ApPlE's1 = str.lower()print(s1)# 结果:'apple'
- upper():字符串变成大写
str = 'ApPlE's1 = str.upper()print(s1)# 结果:'APPLE'
- capitalize():首字母大写
str = 'ApPlE's1 = str.upper()print(s1)# 结果:'Apple'
- replace():字符替换
s = 'Hello world!!'s1 = s.replace('world', 'Wang') # s = 'Hello World', s1 = 'Hello Wang'
- strip():移除字符串头和尾指定的字符,默认为去掉空格
str = '0000000this is an apple!0000's = str.strip('0')print(s)# 结果:'this is an apple!'L = ['A', 'B', None, 'C', ' ']L1 = L.strip()print(L1)# 结果:['A', 'B', 'C']
基本数据类型转换
int('123') # string -> intint(12.23) # float -> intfloat('1.23') # float -> stringstr(1.23) # float -> stringstr(100) # int -> string
阅读全文