python_day2学习笔记
- 基本数据类型
1、数字
int(整型)
在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
1 1)int --> string
2 str是保留关键字,
3 >>>a = 10
4 >>>str1 = str(a)
5
6 2)string --> int
7 >>>x = ""
8 >>>y = int(x) 1 >>> lists = ['a', 'b', 'e', 'c', 'd', 'a']
2 >>> print '列表list转换为str:', ''.join(lists)
3 结果:
4 列表list转换为str: abecda
5
6 >>>strs = 'hongten'
7 >>>print '序列strs转换为list:', list(strs)
8 结果:
9 序列strs转换为list:['h', 'o', 'n', 'g', 't', 'e', 'n']
10
11 >>>print '列表list转换为tuple:', tuple(lists)
12 结果:
13 列表list转换为tuple:('h', 'o', 'n', 'g', 't', 'e', 'n')
14
15 >>>print '整数转换为字符chr:', chr(67)
16 结果:
17 整数转换为字符chr:'C'
18
19 >>>print('字符chr转换为整数:', ord('C'))
20 结果:
21 字符chr转换为整数:67
22
23 >>>print('整数转16进制数:', hex(12))
24 结果::
25 整数转16进制数:'0xc'
26
27 >>>print('整数转8进制数:', oct(12))
28 结果:
29 整数转8进制数:''
2、布尔值
在计算机内部,python使用1来表示True,而使用0来表示False。可以使用int数将布尔值转换为一个整数。
实例:
>>>print(int(True))
>>>1 >>>print(int(False))
>>>0
也可以用bool函数将一个数字值转换成一个布尔值。如果值为0,这个函数返回False; 否则,这个函数总是返回True。
实例:
>>>print(bool(0))
>>>False >>>print(bool(1))
>>>True
3、字符串
a、处理字符串的函数
>>> s = "Welcome"
>>> len(s)
7
>>> max(s)
'o'
>>> min(s)
'W'
b、下标运算符
>>> s = "Welcome"
>>>for i in range(0, len(s), 2):
print(s[i], end = '')
>>>Wloe >>>s = "Welcome"
>>>s[-1]
'e'
>>>s[-2]
'm'
c、截取运算符
>>> s = "Welcome"
>>> s[1:4]
'elc'
>>> s[ :6]
'Welcom'
>>> s[4: ]
'ome'
>>> s[1:-1]
'elcom'
d、in和not in 运算符
>>> s = "Welcome"
>>> 'come' in s
True
>>> 'come' not in s
False
e、比较字符串
>>> "green" == "glow"
False
>>> "green" != "glow"
True
>>> "green" > "glow"
True
>>> "green" < "glow"
False
>>> "green" <= "glow"
False
f、搜索字串
>>> s = "welcome to python"
>>> s.endswith('thon')
True
>>> s.startswith("good")
False
>>> s.find("come")
3
>>> s.find("become")
-1
>>> s.find("o")
4
>>> s.rfind("o")
15
>>> s.count("o")
3
g、转换字符串
>>> s = "welcome to python"
>>> s1 = s.capitalize()
>>> s1
'Welcome to python'
>>> s2 = s.title()
>>> s2
'Welcome To Python'
>>> s = "New England"
>>> s3 = s.lower()
>>> s3
'new england'
>>> s4 = s.upper()
>>> s4
'NEW ENGLAND'
>>> s5 = s.swapcase()
>>> s5
'nEW eNGLAND'
>>> s6 = s.replace("England", "Haven")
>>> s6
'New Haven'
>>> s
'New England'
H、删除字符串的空格
>>> s = " Welcome to Python\t"
>>> s1 = s.lstrip()
>>> s1
'Welcome to Python\t'
>>> s2 = s.rstrip()
>>> s2
' Welcome to Python'
>>> s3 = s.strip()
>>> s3
'Welcome to Python'
I、格式化字符串
>>> s = "Welcome"
>>> s1 = s.center(11)
>>> s1
' Welcome '
>>> s2 = s.ljust(11)
>>> s2
'Welcome '
>>> s3 = s.rjust(11)
>>> s3
' Welcome'
4、列表
a、列表使用的函数
>>> list = [2,3,4,1,32]
>>> len(list)
5
>>> max(list)
32
>>> min(list)
1
>>> sum(list)
42
b、下标运算符
>>> list = [2,3,5,2,33,21]
>>> list[-1]
21
>>> list[-3]
2
c、列表截取
>>> list = [2,3,5,2,33,21]
>>> list[2:4]
[5, 2]
>>> list[:2]
[2, 3]
>>> list[3:]
[2, 33, 21]
>>> list[1:-3]
[3, 5]
>>> list[-4:-2]
[5, 2]
d、列表方法
>>> list = [2,3,4,1,32,4]
>>> list.append(19)
>>> list
[2, 3, 4, 1, 32, 4, 19]
>>> list.count(4)
2
>>> list2 = [99,54]
>>> list.extend(list2)
>>> list
[99, 25, 54, 99, 54, 99, 54]
>>> list.insert(1,25)
>>> list
[99, 25, 25, 54, 99, 54, 99, 54]
>>> list1 = [2,25,3,4,1,32,4,1,32,4,19,99,54]
>>> list.pop(2)
25
>>> list1
[2, 25, 4, 1, 32, 4, 1, 32, 4, 19, 99, 54]
>>> list1 = [2,25,3,4,1,32,4,1,32,4,19,99,54]
>>> list.pop(2)
25
>>> list
[99, 25, 54, 99, 54, 99, 54]
>>> list1
[2, 25, 3, 4, 1, 32, 4, 1, 32, 4, 19, 99, 54]
>>>
>>>
>>> list1.pop(2)
3
>>> list1
[2, 25, 4, 1, 32, 4, 1, 32, 4, 19, 99, 54]
>>> list1.pop()
54
>>> list1
[2, 25, 4, 1, 32, 4, 1, 32, 4, 19, 99]
>>> list1.remove(32)
>>> list1
[2, 25, 4, 1, 4, 1, 32, 4, 19, 99]
>>> list1.reverse()
>>> list1
[99, 19, 4, 32, 1, 4, 1, 4, 25, 2] >>> list1.sort()
>>> list1
[1, 1, 2, 4, 4, 4, 19, 25, 32, 99]
e、enumerate遍历列表
使用如下的方式遍历一个列表,但是缺点是无法读取索引index。
>>> a = [3,4,5,2,3,7,8,9]
>>> for i in a:
... print i
...
3
4
5
2
3
7
8
9 下面两种方法改进,如下举例:
>>> for index,item in enumerate(a):
... print index,item
...
0 3
1 4
2 5
3 2
4 3
5 7
6 8
7 9
>>>
>>>
>>> for i in range(len(a)):
... print i,a[i]
...
0 3
1 4
2 5
3 2
4 3
5 7
6 8
7 9
>>>
5、元组
元组跟列表类似,但是元组中的元素是固定的,也就是说,一旦一个元组被创建,就无法对元组中的元素进行添加、删除、替代或重新排序。
>>> tuple1 = ("green", "red", "blue")
>>> print tuple1
('green', 'red', 'blue')
>>> tuple2 = tuple([7,1,2,23,4,5])
>>> print tuple2
(7, 1, 2, 23, 4, 5)
6、字典
字典是一个存储键值对集合的容器对象。它通过使用关键字实现快速、删除和更新值。
如创建字典语句:
students = {”111-34-3434“:"John", "132-56-6290":"Peter"}
a、添加、删除举例:
>>> students = {"111-34-3434" : "John", "132-56-6290" : "Peter"}
>>> students["234-56-9010"] = "Susan" #从字典添加条目
>>> students["234-56-9010"]
'Susan'
>>> del students["234-56-9010"] #从字典删除一个条目
b、循环条目:
>>>students = {'111-34-3434': 'John Smith', '132-56-6290': 'Peter'}
>>> for key in students:
... print(key + ":" + str(students[key]))
...
111-34-3434:John Smith
132-56-6290:Peter
c、len函数:
>>>students = {'111-34-3434': 'John Smith', '132-56-6290': 'Peter'}
>>>len(students)
2
d、检测一个关键字是否在字典中:
>>>students = {'111-34-3434': 'John Smith', '132-56-6290': 'Peter'}
>>> "111-34-3434" in students
True
>>> "998-34-3434" in students
False
>>>
e、相等性检测:
>>> d1 = {"red":41, "blue":3}
>>> d2 = {"blue":3, "red":41}
>>> d1 == d2
True
>>> d1 != d2
False
>>>
f、字典方法:
>>> students = {"111-34-3434":"John", "132-56-6290":"Peter"}
>>> tuple(students.keys())
('111-34-3434', '132-56-6290')
>>> tuple(students.values())
('John', 'Peter')
>>> tuple(students.items())
(('111-34-3434', 'John'), ('132-56-6290', 'Peter'))
>>> students.get("111-34-3434")
'John'
>>> print(students.get("999-334-3434"))
None
>>> students.pop("111-34-3434")
'John'
>>> students
{'132-56-6290': 'Peter'}
>>> students.clear()
>>> students
{}
>>>
dic = {'k1' : 123,'k2' : 456,'k4' : 111}
n = dic.fromkeys(['k1','k2','k3'],[])
print(n)
n['k1'].append('x')
print(n)
运行结果如下:
{'k2': [], 'k1': [], 'k3': []}
{'k2': ['x'], 'k1': ['x'], 'k3': ['x']}
dic = {'k1' : 123,'k2' : 456,'k4' : 111}
n = dic.fromkeys(['k1','k2','k3'],'alex')
print(n)
运行结果如下:
{'k3': 'alex', 'k1': 'alex', 'k2': 'alex'}
li = [11,22,44]
new_dict = dict(enumerate(li))
print(new_dict)
运行结果如下:
{0: 11, 1: 22, 2: 44}
li = [11,22,44]
new_dict = dict(enumerate(li,10))
print(new_dict)
运行结果如下:
{10: 11, 11: 22, 12: 44}
t = (11,22,['alex',{'k1':"v1"}])
t[2][1]['k2'] = 123
print(t)
运行结果如下:
(11, 22, ['alex', {'k1': 'v1', 'k2': 123}])
t = (11,22,['alex',{'k1':"v1"}])
t[2][1].update({'k2':123})
print(t)
运行结果如下:
(11, 22, ['alex', {'k1': 'v1', 'k2': 123}])
python_day2学习笔记的更多相关文章
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- PHP-自定义模板-学习笔记
1. 开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2. 整体架构图 ...
- PHP-会员登录与注册例子解析-学习笔记
1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...
- 2014年暑假c#学习笔记目录
2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...
- JAVA GUI编程学习笔记目录
2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...
- seaJs学习笔记2 – seaJs组建库的使用
原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...
- CSS学习笔记
CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...
- HTML学习笔记
HTML学习笔记 2016年12月15日整理 Chapter1 URL(scheme://host.domain:port/path/filename) scheme: 定义因特网服务的类型,常见的为 ...
- DirectX Graphics Infrastructure(DXGI):最佳范例 学习笔记
今天要学习的这篇文章写的算是比较早的了,大概在DX11时代就写好了,当时龙书11版看得很潦草,并没有注意这篇文章,现在看12,觉得是跳不过去的一篇文章,地址如下: https://msdn.micro ...
随机推荐
- 【状压DP】【P2831】【NOIP2016D2T3】愤怒的小鸟
传送门 Description Kiana 最近沉迷于一款神奇的游戏无法自拔. 简单来说,这款游戏是在一个平面上进行的. 有一架弹弓位于 $(0,0)$ 处,每次 Kiana 可以用它向第一象限发射一 ...
- Javascript中的date对象和getTime()方法
有些时候我们需要计算两个日期间的天数,或者小时数等等.下面用JavaScript实现这个需求,然后学习一下需要用到的一些JavaScript函数. JavaScript程序如下: 1 <scri ...
- ioctl函数用法小记
By francis_hao Aug 27,2017 UNPV1对ioctl有算是比较详细的介绍,但是,这些request和后面的数据类型是从哪里来的,以及参数具体该如何使用呢?本文尝试在不 ...
- finetune on caffe
官方例程:http://caffe.berkeleyvision.org/gathered/examples/finetune_flickr_style.html 相应的中文说明:http://blo ...
- Codeforces Round #393 (Div. 2) (8VC Venture Cup 2017 - Final Round Div. 2 Edition)A 水 B 二分 C并查集
A. Petr and a calendar time limit per test 2 seconds memory limit per test 256 megabytes input stand ...
- OpenCV学习笔记(01)我的第一个OpenCV程序(环境配置)
昨天刚刚考完编译原理,私心想着可以做一些与考试无关的东西了.一直想做和图像处理相关的东西,趁这段时间有空学习一下OpenCV,搭建环境真是一件麻烦的事情,搞了近三个小时终于OK了.先来张图: 大致描述 ...
- 实体框架(Entity Framework)快速入门
实体 框架 (Entity Framework )简介 实体框架Entity Framework 是 ADO .NET 中的一组支持 开发 面向数据的软件应用程序的技术.是微软的一个ORM框架. OR ...
- process monitor教程汇总
这是只一个简单的例子,当然还有更复杂的规则说明,可以参考一下列表里的规则. 最后说下 process monitor 到底有什么用? 除了那些电脑高手喜欢分析程序运行情况外, 还有那些编程 ...
- vijos 1180 选课 树形DP
描述 学校实行学分制.每门的必修课都有固定的学分,同时还必须获得相应的选修课程学分.学校开设了N(N<300)门的选修课程,每个学生可选课程的数量M是给定的.学生选修了这M门课并考核通过就能获得 ...
- 调戏OpenShift:一个免费能干的云平台(已失效)
一.前因后果 以前为了搞微信的公众号,在新浪sae那里申请了一个服务器,一开始还挺好的 ,有免费的云豆送,但是一直运行应用也要消费云豆,搞得云豆也所剩无几了.作为一名屌丝,日常吃土,就单纯想玩一玩微信 ...