Python之路(二)Python基础

运算符

  • 算数运算符
    |序号|符号|描述|实例|
    |--|
    |1|+|加,两个操作数相加|6 + 3 输出结果9|
    |2|-|减,两个操作数相减|6 - 3 输出结果3|
    |3|*|乘,两个操作数相乘|6 * 3 输出结果18|
    |4|/|除,两个操作数相除|6 / 3 输出结果2|
    |5|%|取模,返回除法的余数|6 % 4 输出结果2|
    |6|**|幂,返回x的y次幂|2 ** 3 输出结果8|
    |7|//|取整除,返回商的整数部分|6 / 5 输出结果1|

  • 比较运算符
    |序号|符号|描述|实例|
    |--|
    |1|==|等于,比较两个对象是否相等|1 == 1 返回True|
    |2|!=|不等于,比较两个对象是否不相等|1 != 1 返回False|
    |3|>|大于,返回x是否大于y|2 > 1 返回True|
    |4|<|小于,返回x是否小于y|2 < 1 返回False|
    |5|>=|大于等于,返回x是否大于等于y|2 >= 1 返回True|
    |6|<=|小于等于,返回x是否小于等于y|2 <= 1 返回False|

  • 赋值运算符
    |序号|符号|描述|实例|
    |--|
    |1|=|简单的赋值运算符|a = 123|
    |2|+=|加法赋值运算符|a += 1 等效于a = a + 1|
    |3|-=|减法赋值运算符|a -= 1 等效于a = a - 1|
    |4|*=|乘法赋值运算符|a *= 1 等效于a = a * 1|
    |5|/=|除法赋值运算符|a /= 1 等效于a = a / 1|
    |6|%=|取模赋值运算符|a %= 1 等效于a = a % 1|
    |7|**=|幂赋值运算符|a **= 1 等效于a = a ** 1|
    |8|//=|取整除赋值运算符|a //= 1 等效于a = a // 1|

  • 逻辑运算符
    |序号|符号|表达式|描述|实例|
    |--|
    |1|and|x and y|布尔''与''|1 = 1 and 2 > 1 返回True|
    |2|or|x or y|布尔''或"|1 == 1 or 2 > 1 返回True|
    |3|not|not x|布尔''非''|not 1 == 1 返回False|

  • 成员运算符
    |序号|符号|描述|实例|
    |--|
    |1|in|在指定的序列种找到值,返回True,否则返回False|x在y序列中 返回True|
    |2|not in|在指定的序列种找不到值,返回True,否则返回False|x不在y序列中 返回True|

整数

Python可以处理任意大小的整数,当然包括负整数,例如1,100,-99。

  • 创建
a = 123
a = int(123)
print(type(a))	// 打印变量a的类型
  • 转换
a = '123'
int_a = int(a)	// 将字符串转换成整数
print(type(int_a))

布尔值

布尔值只有True,False两种值,要么是True,要么是False,在Python中可以直接使用True,False来表示布尔值(需要注意大小写)。

  • 创建
a = True
print(type(a))
b = False
print(type(b))
  • 转换
a = 123
bool_a = bool(a)	// 将整数转换成布尔值,整数转换成布尔值只有0是False,其它都是True
print(type(bool_a))

b = 'Hello'
bool_b = bool(b)	// 将字符串转换成布尔值,字符串转换成布尔值只有空是False,其它都是True
print(type(bool_b))

字符串

字符串是以单引号,双引号括起来的任意文本,例如'Hello',''Python''。

  • 创建
a = 'Hello'
a = str('Hello')
print(type(a))
  • 转换
a = 123
str_a = str(a)	// 将整数转换成字符串
print(type(str_a))
  • 拼接
a = 'Hello'
b = 'Python'
print(a + b)
  • 格式化
a = '我叫%s,我今年%d岁,体重%f公斤,我正再学习%s课程' %('林斌',18,55.2,'Python')
print(a)

%s:打印字符串
%d:打印整数
%f:打印浮点数

  • 子序列
a = '谁说我的眼里只有你,让我把你忘记!'
if '我的眼里只有你' in a:
    print('包含敏感字符')
else:
    print('不包含敏感字符')
  • 移除空白,换行符
a = ' linbin '
print(a.strip())	// 移除左右两边空白
print(a.lstrip())	// 移除左边空白
print(a.rstrip())	// 移除右边空白
  • 分割
a = 'my|name|is|linbin'
print(a.split('|'))		// 以'|'进行分割
print(a.split('|',1))	// 以左边第一个'|'进行分割
print(a.rsplit('|',1))	// 以右边第一个'|'进行分割
  • 长度计算
a = '谁说我的眼里只有你,让我把你忘记!'
print(len(a))		// 计算字符长度,不是字节长度
  • 索引
a = '谁说我的眼里只有你,让我把你忘记!'
print(a[8])		   // 从0开始开始计算

a = '谁说我的眼里只有你,让我把你忘记!'
i = 0
while i < len(a):
    print(a[i])
    i += 1
  • 切片
a = '谁说我的眼里只有你,让我把你忘记!'
print(a[2])	  	  // 取第三个字符
print(a[-2])	  // 取倒数第二个字符
print(a[0:2])	  // 从第一个字符开始,连续取两个字符
print(a[0:])	  // 从第一个字符开始,取到最后
print(a[0:-1])	  // 从第一个字符开始,取到最后,但不取最后一个字符
print(a[0::2])	  // 从第一个字符开始,取到最后,步长为2

列表

列表是一种有序的集合,可以随时添加和删除其中的元素,例如a = ['林斌',123,'linbin']。

  • 创建
a = ['林斌',123,'linbin']
a = list(['林斌',123,'linbin'])
print(type(a))
  • 子元素
a = ['林斌',123,'linbin']
if 'linbin' in a:
    print('包含子元素')
else:
    print('不包含子元素')

a = ['林斌',123,'linbin']
if '林' in a[0]:
    print('元素包含在列表内')
else:
    print('元素不包含在列表内')
  • 索引
a = ['林斌',123,'linbin']
print(a[2])
  • 长度计算
a = ['林斌',123,'linbin']
print(len(a))
  • 切片
a = ['林斌',123,'linbin']
print(a[0:2])
  • 追加
a = ['林斌',123,'linbin']
a.append('Python')		// 追加到列表最后面
print(a)
  • 插入
a = ['林斌',123,'linbin']
a.insert(1,'Python')	// 插入到指定元素后面
print(a)
  • 删除
a = ['林斌',123,'linbin']
a.remove(123)	// 以元素的方式删除,从左边开始删除第一个
print(a)
del a[1]		// 以索引的方式删除
print(a)
  • 更新
a = ['林斌',123,'linbin']
a[1] = 'LinBin'		// 如果超过列表的长度会报错
print(a)
  • 循环
a = ['林斌',123,'linbin']
for i in a:
    print(i)

a = ['林斌',123,'linbin']
i = 0
while i < len(a):
    print(a[i])
    i += 1

字典

字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值(key=>value)对用冒号:分割,每个对之间用逗号,分割,整个字典包括在花括号{}中,例如

  • 创建
a = {
    'name': 'linbin',
    'password': 'axbc1kof',
    'times': 3
}

a = dict({
    'name': 'linbin',
    'password': 'axbc1kof',
    'times': 3
})
  • 长度计算
a = {
    'name': 'linbin',
    'password': 'axbc1kof',
    'times': 3
}
print(len(a))
  • 索引取值
a = {
    'name': 'linbin',
    'password': 'axbc1kof',
    'times': 3
}
print(a['password'])		// 根据key获取值
  • 追加
a = {
    'name': 'linbin',
    'password': 'axbc1kof',
    'times': 3
}
a['sex'] = '男'		// 如果key不存在,则添加,如果存在,则更新
print(a)
  • 删除
a = {
    'name': 'linbin',
    'password': 'axbc1kof',
    'times': 3
}
del a['times']
print(a)
  • 更新
a = {
    'name': 'linbin',
    'password': 'axbc1kof',
    'times': 3
}
a['times'] = 4
print(a)
  • 循环
a = {
    'name': 'linbin',
    'password': 'axbc1kof',
    'times': 3
}
for i in a.keys():		// 循环keys
    print(i)

a = {
    'name': 'linbin',
    'password': 'axbc1kof',
    'times': 3
}
for i in a.values():	// 循环values
    print(i)

a = {
    'name': 'linbin',
    'password': 'axbc1kof',
    'times': 3
}
for i in a.items():		// 循环items
    print(i)

字典和列表嵌套

  • 列表嵌套列表
user_list = ['linbin','LinBin',['a','b','c']]
  • 字典嵌套字典
user_dict = {
    'name': 'linbin',
    'password': 'axbc1kof',
    'times': 3
    'sex': {
        'Libin': '男',
        'LinBin': '女'
    }
}
  • 字典列表相互嵌套
user_dict = {
    'name': 'linbin',
    'password': 'axbc1kof',
    'times': {
        'k1': 'v1',
        'k2': 'v2'
    },
    'sex': ['linbin','LinBin',['a','b','c'],{'name': 'liuwenqian','password': 'axbc1kof'}]
}
a = user_dict['sex'][2]
a.append('d')
print(a)

a = user_dict['sex'][3]
a['times'] = 3
print(a)
```

## 小试牛刀
1. 基于文件存储的用户登录程序(三次登录失败,锁定用户)
```

```
posted @ 2017-11-24 16:24  dongshi  阅读(191)  评论(0)    收藏  举报