python学习笔记(一)
1.首次安装的时候,运行一些命令可能会报错,需要升级或者下载指定的依赖
pip升级 python -m pip install --upgrade pip -ihttp://pypi.douban.com/simple --trusted-host pypi.douban.com
依赖下载 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn 模块名称
由于默认镜像下载特别慢,经常性的出现下载超时,这里可以直接指定镜像下载
1.1 参考镜像
http://pypi.douban.com/simple/
豆瓣http://mirrors.aliyun.com/pypi/simple/
阿里http://pypi.hustunique.com/simple/
华中理工大学http://pypi.sdutlinux.org/simple/
山东理工大学http://pypi.mirrors.ustc.edu.cn/simple/
中国科学技术大学https://pypi.tuna.tsinghua.edu.cn/simple
清华
1.2 设置全局镜像代理
- 在自己的电脑指定位置添加
pip
文件夹,并创建pip.ini
文件 - 配置文件如下
[global]
# 配置镜像源,自己根据位置选择
index-url = http://pypi.douban.com/simple
# 添加源为可信主机 不然可能会报错3
trusted-host = pypi.douban.com
# 取消pip 每次版本更新检查
disable-pip-version-check = true
# 配置下载链接超时时间
timeout = 120
2. 基本用法
- 定义全局编码格式
# -*- coding: cp-1252 -*-
- 特定字符转义使用
字符 ,如果不希望发生转义,则在字符串前添加
r
2.1 基本数据类型
1. 字符串
- 运算 字符串可以直接使用运算符 进行重复 比如
print ('string','test'*3)
输出的为string testtesttest
字符串的索引方式有两种,一种是从左往右0开始,一个是从右往左-1开始 - 截取 (截取规则通java的substring)
>>> test = 'helloword'
>>> test[1:5]
ello
>>> test[:]
hellowrd
>>> test[5:]
word
>>> test[-1:-6]
loword
2. list 列表
list
基本属性和java类似,可以插入,追加,修改,截取(在python
中官方名词为切片和索引) 索引和切边都是一样的用,这里记录一下追加的使用
>>> a = [1,2,3,4,5]
>>> a [6,7,8,9]
[1,2,3,4,5,6,7,8,9]
3. Tuple
元组
元祖的性质大致和list
差不多,区别在于 元祖的当个元素属性 不可更改(不包括元祖中元素为对象的) ,元祖是由括号包括,逗号连接
>>> a = (1991, 2014, 'physics', 'math')
>>> print(a, type(a), len(a))
(1991, 2014, 'physics', 'math') <class 'tuple'> 4
4. 集合sets
和字典 Dictionaries
集合是无序不重复的数据,创建集合的方式为set
(),而{}
是创建空字典,集合和字典都是由{}
包括
集合
代码语言:javascript复制>>> student = {'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'}
>>> print(student) # 重复的元素被自动去掉
{'Jim', 'Jack', 'Mary', 'Tom', 'Rose'}
>>> 'Rose' in student # membership testing(成员测试)
True
>>> # set可以进行集合运算
...
>>> a = set('abracadabra')
>>> b = set('alacazam')
>>> a
{'a', 'b', 'c', 'd', 'r'}
>>> a - b # a和b的差集
{'b', 'd', 'r'}
>>> a | b # a和b的并集
{'l', 'm', 'a', 'b', 'c', 'd', 'z', 'r'}
>>> a & b # a和b的交集
{'a', 'c'}
>>> a ^ b # a和b中不同时存在的元素
{'l', 'm', 'b', 'd', 'z', 'r'}
字典
代码语言:javascript复制>>> dic = {} # 创建空字典
>>> tel = {'Jack':1557, 'Tom':1320, 'Rose':1886}
>>> tel
{'Tom': 1320, 'Jack': 1557, 'Rose': 1886}
>>> tel['Jack'] # 主要的操作:通过key查询
1557
>>> del tel['Rose'] # 删除一个键值对
>>> tel['Mary'] = 4127 # 添加一个键值对
>>> tel
{'Tom': 1320, 'Jack': 1557, 'Mary': 4127}
>>> list(tel.keys()) # 返回所有key组成的list
['Tom', 'Jack', 'Mary']
>>> sorted(tel.keys()) # 按key排序
['Jack', 'Mary', 'Tom']
>>> 'Tom' in tel # 成员测试
True
>>> 'Mary' not in tel # 成员测试
False
>>> dict([('sape', 4139), ('guido', 4127), ('jack', 4098)])
{'jack': 4098, 'sape': 4139, 'guido': 4127}
>>> {x: x**2 for x in (2, 4, 6)}
{2: 4, 4: 16, 6: 36}
>>> dict(sape=4139, guido=4127, jack=4098)
{'jack': 4098, 'sape': 4139, 'guido': 4127}