Python自学笔记03
- 查询python关键字
import keyword
print(keyword.kwlist)
- 字符串格式化
'''
print("hello woeld!",2**22)
x=int(input("x="))
print("x=",x,"fasdf")
'''
'''
#unit02
format = "hello, %s, %s enough for ya?"
values = ('world', 'hot')
print(format % values)
'''
'''
from string import Template
tp = Template("Hello,$who!")
tp.substitute(who="GM")
print(tp.substitute(who="GM"))
'''
'''
#格式化
#print("{},{},{}and{}".format("first","second","third","fourth"))
s="{},{},{},and{}".format("first","second","third","fourth")
print(s)
sbuff="{3},{0},{2},{1},{3}".format("not","or","to","YES")
print(sbuff)
num="{name} is the value to {value:.2f}".format(value=3.1592653,name="PI")
print(num)
'''
'''
#unit03
phonebook = {'key1':52301,'key2':52102,'key3':58946}
l = phonebook.__len__()
print(l)
v=phonebook['key1']
print(v)
phonebook['key2'] = 12316#字典中某项值的替换
print(phonebook['key2'])
print('key1' in phonebook)#字典中某项的查询
del phonebook['key1']#删除某项
print('key1' in phonebook)
pho = "ceile de number is {key3}".format_map(phonebook)#格式化用于字典
print(pho)
phonebook.clear()
print('key3' in phonebook)
'''
'''
from math import sqrt as KPF#引入并重命名
i = int(KPF(9))
print(i)
x,y,z=1,2,3 #同时赋值
x,y=y,x #交换值
print("x=",x,"y=",y,"z=",z)
x=input("plesae input x:")
if(x!=False):
print("x is not false")
else:
print("x is 0")
'''
- 数据类型
四个数字类型:int 整型 float 浮点型 complex 复数 bool 布尔型
- 两种输出方法的比较:
import sys
sys.stdout.write("sys 输出")
print("print 输出")
sys.stdout的形式就是print的一种默认输出格式,等于print “%VALUE%”
sys.stdout.write()输出不会自动换行,没有end,可用转义字符自行控制
/n 换行
/r 回车到本行首,可刷新输出
如用sys.stdout.write() 和\r实现自定义进度条
print函数是对sys.stdout的高级封装
print是默认调用了sys.stdout.write()方法将输出打印到控制台
- import 与 from…import
在 python 用 import 或者 from…import 来导入相应的模块。
将整个模块(somemodule)导入,格式为: import somemodule
从某个模块中导入某个函数,格式为: from somemodule import somefunction
从某个模块中导入多个函数,格式为: from somemodule import firstfunc, secondfunc, thirdfunc
将某个模块中的全部函数导入,格式为: from somemodule import *
- Python3 中有六个标准的数据类型:
Number(数字)
String(字符串)
List(列表)
Tuple(元组)
Set(集合)
Dictionary(字典)
Python3 的六个标准数据类型中:
不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。
- 字符串索引
与 C 字符串不同的是,Python 字符串不能被改变。
向一个索引位置赋值,比如word[0] = 'm’会导致错误。
- List列表
python 中的数据结构
序列:列表 元组 字典 集合 str range()
有序: list tuple
无序:dict set
可变: list dict set
不可变:tuple
List 列表 有序可变可包含任意类型数据的容器
可包含任意类型?例如:["",1,1.1,True]
可通过下标访问其中的元素,从0开始
列表长度可变(可动态添加删除元素)
可原位改变,即,可修改元素的值
注意:
1、List写在方括号之间,元素用逗号隔开。
2、和字符串一样,list可以被索引和切片。
3、List可以使用+操作符进行拼接。
4、List中的元素是可以改变的。
加号 + 是列表连接运算符,星号 * 是重复操作
list = ['abcd', 786, 2.23, 'hhsxy', 70.2]
tinylist = [123, 'hhsxy']
print(list) # 输出完整列表
print(list[0]) # 输出列表第一个元素
print(list[1:3]) # 从第二个开始输出到第三个元素
print(list[2:]) # 输出从第三个元素开始的所有元素
print(tinylist * 2) # 输出两次列表
print(list + tinylist) # 连接列表
- Tuple 元组
元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开
元组与列表类似,不同之处在于元组的元素不能修改。
若要更改可以用 转换为列表 :list(yuanzu)
元组使用小括号,列表使用方括号。
元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。
元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用:
#tuple function
demo_tuple = ("John",15,175.3,True)
num_tuple = (125,255,2589)
add_tuple = demo_tuple + num_tuple#元组的拼接
print(add_tuple)
print(num_tuple[2])#访问方式一样
#删除元组 元组中的数据不可以上删除 但是可以del 删除整个元组
del add_tuple
print(add_tuple)
#元组运算符
len(num_tuple)
print(num_tuple*4)
print(255 in num_tuple)
#tuple function
#tuple(list) #将一个list转换为tuple
- Dictionary(字典)
字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。
键(key)必须使用不可变类型。
在同一个字典中,键(key)必须是唯一的。
#dict 字典
'''
可以存储任意类型对象 可变容器模型
成对出现 用{} 对之间用: 对于对之间用, 分开
{键值:值,键值:值}
键必须是唯一的,但值则不必。
值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。
'''
message = {"John":180,"Jane":158,"Jerry":175,"Me":170}
#增删改查之查
#用法类似
print(message["Me"])
for i in message:
print(i)
#增删改查之改
message["Jane"]=160
print(message["Jane"])
#增删改查之删
#可以删除某个元素 也可以整个删除
# del message["Jerry"]
# print(message["Jerry"])
#
# message.clear()
# del message
# print(message)
#增删改查之增
#木有哩
#dict function
len(message)#计算键值个数
str(message)#输出字典以可以打印的字符串表示
message.get("Me")#类似于查 得到键值对应的值
print("Me" in message)
print(message.items())#以列表返回可遍历的(键值,值)元组数组
print(list(message.keys()))#返回一个迭代器,可以使用list()来转化为列表
message.setdefault("You")#查询是否含有该键值 若无 则添加 并将其值设置为default
注意:
1、字典是一种映射类型,它的元素是键值对。
2、字典的关键字必须为不可变类型,且不能重复。
- Set 集合
集合(set)是一个无序的不重复元素序列。
可以使用大括号 { } 或者 set() 函数创建集合,
注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。