标签:地址 改变 代码 利用 values 输出 执行 注释 --
我们通常还是用GBK指代中文windows内码
usf-8是对编码的压缩和优化,在编写python的时候需要声明给python解释器(说了python是解释型语言),使用什么编码来执行源代码:
#!/usr/bin/env python
# -*- coding:utf-8 -*-
单行注释#
多行注释 ``` ```
input()
需要限制输入类型的时候,在input外面套接一个数据类型例如int(input())
输入密码时,如果想要不可见,需要利用getpass
模块中的getpass
方法:
import getpass
pwd = getpass.getpass(‘enter your pwd:‘)
在这里穿插解释数据类型
数字
int
整型
long
长整型:在python2.2以后的版本里,python在长整数据后面不加L也不会有太大的问题
float
浮点型
complex
复数
布尔值
真/假
字符串
‘hello world‘
字符串的格式化输出
name = ‘scott‘
print(‘i am %s‘%name)
#字符串是%s ; 整数%d ; 浮点数 %f
print(name.strip()) #脱
print(name.split()) #分割
print(name.len()) #长度
print(name.index(‘s‘)) #索引
name1 = ‘scott,jack,jerry‘
print(name[0:4])
#输出结果为‘scot’
#说明python切片的一条规则
#**顾头不顾尾**
#范例:
print(name [-6:])
print(name [-6:1])
print(name [0::3]) #隔几个字符取一次
>>> name = [‘scott‘,‘jack‘,‘jerry‘,‘peter‘]
>>> name.append(‘super‘)
>>> name
[‘scott‘, ‘jack‘, ‘jerry‘, ‘peter‘, ‘super‘]
>>> name.insert(2,‘alex‘)
>>> name
[‘scott‘, ‘jack‘, ‘alex‘, ‘jerry‘, ‘peter‘, ‘super‘]
>>> name.pop(3)
‘jerry‘
>>> name
[‘scott‘, ‘jack‘, ‘alex‘, ‘peter‘, ‘super‘]
不添加参数,默认删除最后一个
>>> name.pop()
‘super‘
>>> name.count(‘jack‘)
1
## 计算结果以及为什么?
a = [1, 2, [3, "hello"], {"egon": "aigan"}]
# 形参a指向一块储存列表的内存位置
b = a[:]
# 形参b指向相同的位置
a[0] = 5
# 原本a的列表修改了某个值,a指向别的内存地址,该地址存储着新的列表
# a修改了某个一层列表元素的位置,b不受影响
a[2][0] = 666
# a修改了某个二层列表元素的位置,b受到影响
print(a)
print(b)
# 知识点:深浅拷贝,b = a[:]让b获得了a的值,但是二者并不公用一块内存地址
# 但是两个列表中的二级列表,指向的是同一块内存地址,
# 所以当两个列表中,一级元素发生改变的时候,互不影响,但当二级元素发生改变的时候,二者同时发生变化。
# 有用于强制深拷贝的模块
key Value 键值
key 必须唯一
name= {
9527:{‘name‘:‘scott‘,‘age‘:23},
9528:{‘name‘:‘jack‘,‘age‘:24},
9529:{‘name‘:‘jerry‘,‘age‘:22},
9530:{‘name‘:‘peter‘,‘age‘:22}
}
取值
print(name[9527][‘age‘])
增
name[9526] = ‘yage‘
删
print(name.pop(9526)) #---会返回他的值
print(name.popitem()) #---随机删除一个
改
修改某个字典元素
name[9528][0] = ‘super jack‘
在某个字典中增加一个数字
name[9529].append(28)
查
print(name.get(9527))
print(9527 in name)
print(name.keys())
print(name.values())
loop
for i in name:
print(i)
for i in name.items():
print (i)
for k,v in names.items():
print(k,v)
更新
dict2 = {
9523:{‘name‘:‘sco‘,‘age‘:23}
9524:{‘name‘:‘jac‘,‘age‘:24}
9525:{‘name‘:‘jer‘,‘age‘:22}
9536:{‘name‘:‘pet‘,‘age‘:22}
}
.update()
如果dict.update(dict2)
如果dict2中有dict已经有的键值,就更新覆盖该键值
标签:地址 改变 代码 利用 values 输出 执行 注释 --
原文地址:http://www.cnblogs.com/scott-lv/p/7468912.html