【Python学习笔记】
语法
if语句
示例
#!/usr/bin/env python
user = 'jack'
passwd = 'jack'
username = input('username:')
password = input('password:')
if user == username and passwd == password :
print("welcome login...")
else:
print("Invalid user name or password...")
while循环
示例
#!/usr/bin/env python
count = 0
while True:
count += 1 #count自增
if count > 50 and count < 60: #count跳过50-60之间的循环
continue #跳出本次循环
print('hello word',count)
if count == 100:
print('已暂停')
break #跳出全局循环
# while循环本身是死循环,上面代码示例while用法
字符串常用操作
strip将输入信息前后空格去除
username = input("username:")
if username.strip() == 'liangml':
print('welcome')
split
name = "liangml,tom,jack"
name2 = name.split(",") #拆分以逗号分隔的字符串得到一个列表
print('|'.join(name2))#join是将name2结果以|形式合并到一起
print(name2)
capitalize 首字母大写
print(name.capitalize())
format字符串两种赋值方式
format字符串两种赋值方式msg = "Hello,{name},It's been a long {age} since last time sopke...."
msg2 = msg.format(name="zhangsan",age=111)
print(msg2)
msg2 = "lisi{0},dddd{1}"
print(msg2.format("liangml",22))
center 将字符串两边长度均匀分开
name = 'jack,tom,zhangsan,lisi'
print(name)
print(name.center(40,'-'))
find 查找赋值中有几个
print(name.find('a'))
isdigit 判断是否为数字
age = input('your age:')
if age.isdigit():
age = int(age)
else:
print('Invalid data type')
isalnum 判断不允许有特殊字符,返回布尔值
name = 'liangml'
print(name.isalnum())
endswith,startswith 分别判断字符串是不是以制定字符结尾或开始,返回布尔值
print(name.endswith("ml"))
print(name.startswith('ml'))
upper、lower 全部变大、全部变小
print(name.upper())
print(name.lower())
列表
列表 索引、切片、追加、删除、长度、循环、包含
列表语法
import copy
list = ['Jack','Tom',[' Abby','Ada'],1,2,3,33,3,3,3,2] #列表里可以嵌套列表
list12 = ['Jack','Tom',' Abby','Ada']
查询
list1 = name[1] #查看第一个元素
list1 = name[-1] #查看最后一个元素
list1 = name[:2] #取出前两个元素
list1 = name[-5:] #取出后5个元素,默认包含最后一个元素
print('Tom' in list) #查看列表中是否有对应元素,返回一个布尔值
删除
list.remove("Tom") #删除一个元素
del list[2:4] #del是一个全局用法,可以删除全局任何数据
list.pop(1) #使用pop删除默认删除第一个
增加
list.append('liangml') #append追加一个
list.insert(2,'shit') #在列表中插入一条数据
修改
list[1] = 'tom'
统计
list12.sort() #python2.x中字符串和数字会排序数字在前,Python3.x中字符串、数字无法排序
list1 = list.count(3) #统计列表某个元素数量
list2 = list.index(33) #index查看对应元素索引
list4 = list.extend(list12) #将list12列表扩展入list列表中
复制
list5 = list.copy() #列表copy用法只复制列表中第一层,嵌入式列表不会被复制
list6 = copy.deepcopy(list) #使用copy模块会将全部的数据复制一份出来
清除
list.clear() #将整个列表清空
长度查看
print(len(list)) #查看列表的长度也可以看其他数据的长度
翻转一个列表
list.reverse() #翻转整个list列表
print(list[::3]) # 隔3个取一个值
print(list)
更改单个列表中相同的元素
if 3 in list:
num_of_ele = list.count(3)
posistion_of_ele = list.index(3)
list[posistion_of_ele] = 3333
print("[%s] 3 is/are in name,posistion:[%s]" % (num_of_ele, posistion_of_ele))
print(list)
批量更改列表中相同的元素
for i in range(list.count(3)):
ele_index = list.index(3)
list[ele_index] = 3333
print(list)
只读列表元组
r = (1,2,3,4,5,5) #使用格式
print(r.count(5)) ##统计参数
print(r.index(1)) ##查看索引
print(type(r)) #查看类型
字典的使用
字典使用
自动去重功能
列表规则
- 1.开始、结尾大括号
- 2.key、value组成中间用冒号分隔
- 3.字典里可以嵌套字典
- 4.字典默认是无序的
my_db = {
32131118540123950:{
'name' : 'Tom',
'age' : 21,
'addr' : 'shanxi'
},
14240218540123950: {
'name': 'Ada',
'age': 22,
'addr': 'BeiJing'
},
21122218540123950: {
'name': 'Jack',
'age': 23,
'addr': 'shandong'
}
}
my_db2 = {
'name' : 'yangsheng',
21122218540123950: {
'name': '123',
'age': 23,
'addr': 'shandong'
}
}
my_db[32131118540123950]['name'] = 'Mr.Liang' #修改字典元素
my_db[32131118540123950]['wechat'] = 'Lin1729562020' #新增或更新字典元素
del my_db[32131118540123950]['addr'] #删除元素
my_db[32131118540123950].pop('name') #删除元素
v = my_db.get(32131118540123950) #获取一个值,没有时返回None
my_db.update(my_db2) #my_db2会将my_db值覆盖,如果没有就新增
print(my_db.items()) #将字典转换成列表
print(my_db.values()) #打印字典的所有values
print(my_db.keys()) #打印字典所有的key
print(32131118540123950 in my_db) #判断key是否在字典中,返回布尔值
print(my_db.setdefault(32131118540124950,'xiaowang')) #取出对应的key值,如果不存在新建key,返回None(value可以指定)
print(my_db.fromkeys([1,2,3,4,5,],'A')) #将列表里的值循环到字典中value为A
print(my_db.popitem()) #随机删除任意一个key
print(my_db[32131118540123950])
print(my_db)
【Python学习笔记】的更多相关文章
- python学习笔记整理——字典
python学习笔记整理 数据结构--字典 无序的 {键:值} 对集合 用于查询的方法 len(d) Return the number of items in the dictionary d. 返 ...
- VS2013中Python学习笔记[Django Web的第一个网页]
前言 前面我简单介绍了Python的Hello World.看到有人问我搞搞Python的Web,一时兴起,就来试试看. 第一篇 VS2013中Python学习笔记[环境搭建] 简单介绍Python环 ...
- python学习笔记之module && package
个人总结: import module,module就是文件名,导入那个python文件 import package,package就是一个文件夹,导入的文件夹下有一个__init__.py的文件, ...
- python学习笔记(六)文件夹遍历,异常处理
python学习笔记(六) 文件夹遍历 1.递归遍历 import os allfile = [] def dirList(path): filelist = os.listdir(path) for ...
- python学习笔记--Django入门四 管理站点--二
接上一节 python学习笔记--Django入门四 管理站点 设置字段可选 编辑Book模块在email字段上加上blank=True,指定email字段为可选,代码如下: class Autho ...
- python学习笔记--Django入门0 安装dangjo
经过这几天的折腾,经历了Django的各种报错,翻译的内容虽然不错,但是与实际的版本有差别,会出现各种奇葩的错误.现在终于找到了解决方法:查看英文原版内容:http://djangobook.com/ ...
- python学习笔记(一)元组,序列,字典
python学习笔记(一)元组,序列,字典
- Pythoner | 你像从前一样的Python学习笔记
Pythoner | 你像从前一样的Python学习笔记 Pythoner
- OpenCV之Python学习笔记
OpenCV之Python学习笔记 直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看 到一本国外的新书< ...
- python学习笔记(五岁以下儿童)深深浅浅的副本复印件,文件和文件夹
python学习笔记(五岁以下儿童) 深拷贝-浅拷贝 浅拷贝就是对引用的拷贝(仅仅拷贝父对象) 深拷贝就是对对象的资源拷贝 普通的复制,仅仅是添加了一个指向同一个地址空间的"标签" ...
随机推荐
- uoj407 【IOI2018】狼人
link 题意: 给一张n个点m条边的无向图,有q个询问,每次询问给出s,t,l,r,问你能否从s走到t,并且初始为人形,结束时必须为狼形,你是人形的时候必须避开$[1,l)$的节点,狼形的时候必须避 ...
- Kolibri v2.0-Buffer Overflow成功复现
Kolibri v2.0-Buffer Overflow成功复现及分析 文件下载地址:http://pan.baidu.com/s/1eS9r9lS 正文 本次讲解用JMP ESP的方法溢出 关于网上 ...
- PHP渗透中的奇淫技巧--检查相等时的漏洞
PHP是现在网站中最为常用的后端语言之一,是一种类型系统 动态.弱类型的面向对象式编程语言.可以嵌入HTML文本中,是目前最流行的web后端语言之一,并且可以和Web Server 如apache和n ...
- Git 简易使用指南及补充
Git最简易的使用指南 助你开始使用 git 的简易指南,木有高深内容,;) 安装 下载 git OSX 版 下载 git Windows 版 下载 git Linux 版 创建新仓库 创建新文件夹, ...
- 关于django Class-based views的理解
django是mvt模式,其中v就是这个显示逻辑部分,简单来讲,view函数可以说是接收request,然后处理,返回response的主体函数. 对于一些简单的逻辑关系,可以用直接用函数模式来进行处 ...
- 【JavaScript代码实现三】JS对象的深度克隆
function clone(Obj) { var buf; if (Obj instanceof Array) { buf = []; // 创建一个空的数组 var i = Obj.length; ...
- CodeForces 128D Numbers 构造
D. Numbers time limit per test 2 seconds memory limit per test 256 megabytes input standard input ou ...
- Codeforces Round #279 (Div. 2) A. Team Olympiad 水题
#include<stdio.h> #include<iostream> #include<memory.h> #include<math.h> usi ...
- jmeter-分布式部署之负载机的设置
本文分三个部分: 1.windows下负载机的配置 2.Linux下负载机的配置 3.遇到的问题 *************************************************** ...
- 解决MySQL建立连接问题,快速回收复用TCP的TIME_WAIT
最近同事遇到一个问题,使用python开发的工具在执行的时候无法和MySQL建立连接,其最直接的现象就是满篇的TIME_WAIT,最后通过调整tcp_timestamps参数问题得以解决,再次记录一下 ...