list列表:L = ['Adam', 'Lisa', 'Bart'],可增删改查元素
list元祖:L = ('Adam', 'Lisa', 'Bart'),一旦定义,不可增删改元素
由于元祖中的数据类型不一样,所以一半不做遍历,因为使用格式字符串拼接要用到%d,%f,%s
字典:字典的定义需要使用{},键值对:L = {"name": "小明","age":18,"genter": True,"height":1.75},删除:pop;统计长度:len;update()合并字典(如果被合并的字典包含已经存在的键值对,就会覆盖原来的键值对);字典.clear():清空字典里的键值对
列表:
L = ['Adam', 'Lisa', 'Bart']
list的书写语法
print L[0]
Adam
python3中定义一个列表,列表所能够使用的方法如下:
list.append(数据); 在末尾追加数据
list.count(数据); 数据在列表中出现的次数
list.insert(索引,数据); 在指定位置插入数据
list.[索引] = 数据;修改列表指定索引的数据
del list[索引];删除指定索引数据
list.reverse(); 逆序,反转
len(列表);列表长度
list.clear(); 清空列表
list.extend(列表2); 将列表2的数据追加到列表
list.pop; 删除末尾数据
list.pop(); 删除指定索引数据
list.sort(); 升序排序
list.sort(reverse=True); 降序排序
list.copy();
list.index(数据); 查看数据在列表内的索引
list.remove(数据); 删除指定数据
list的打印索引值
print L[-1]
Bart
倒序访问list;
用 list 的 append() 方法,把新同学追加到 list 的末尾;
用list的 insert()方法,它接受两个参数,第一个参数是索引号,第二个参数是待添加的新元素;
用list的pop()方法删除;
#插入
L = ['Adam', 'Lisa', 'Bart']
L.append('Paul')
print L
['Adam', 'Lisa', 'Bart', 'Paul']
#插入
L = ['Adam', 'Lisa', 'Bart']
L.insert(0, 'Paul')
print L
['Paul', 'Adam', 'Lisa', 'Bart']
#删除
L.pop()
L.pop(1)
#替换
L[2] = 'Paul'
要避免嵌套结构的 if ... else ...,我们可以用 if ... 多个elif ... else ... 的结构,一次写完所有的规则:
if:
if age >= 18:
print 'adult'
elif age >= 6:
print 'teenager'
elif age >= 3:
print 'kid'
else:
print 'baby'
for:
for循环,遍历list
L = ['Adam', 'Lisa', 'Bart']
for name in L:
print name
while:
while 循环不会迭代 list 或 tuple 的元素,而是根据表达式判断循环是否结束
sum = 0
x = 1
while x < 100:
sum = sum + x
x = x + 2
print sum
dict 字典(键值对):
#用 dict (集合)表示“名字”-“成绩”的查找表如下:len(d)可以计算集合的大小,一个 key-value 算一个
d = {
'Adam': 95,
'Lisa': 85,
'Bart': 59
}
# 使用dict本身提供的一个 get 方法,获取对应key的值,在Key不存在的时候,返回None
d = {
'Adam': 95,
'Lisa': 85,
'Bart': 59
}
print 'Adam:',d.get('Adam')
print 'Lisa:',d.get('Lisa')
print 'Bart:',d.get('Bart')
遍历字典:
#遍历dict
print key+':',d[key]
添加元素时,用set的add()方法,删除set中的元素时,用set的remove()方法:
>>> s = set([1, 2, 3])
>>> s.add(4)
>>> print s
set([1, 2, 3, 4])
>>> s = set([1, 2, 3, 4])
>>> s.remove(4)
>>> print s
set([1, 2, 3])
计算1*1+2*2+3*3+...100*100的和:
#使用sum(),list求和函数,计算1*1+2*2+3*3+...100*100的和
L = []
x = 1
while x <= 100:
L.append(x*x)
x = x+1
print sum(L)
定义一个 square_of_sum 函数,它接受一个list,返回list中每个元素平方的和:
def square_of_sum(L):
sum = 0
for name in L:
sum = sum + name * name
return sum
print square_of_sum([1, 2, 3, 4, 5])
print square_of_sum([-5, 0, 5, 15, 25])
Python关键字:
import keyword
print(keyword.kwlist)
Python关键字包括如下:
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
逻辑运算符:
and 与、 or 或、 not非
条件1 and 条件2
必须两个条件都是true,才会返回true
有一个不成立就会返回false
条件1 or 条件2
只要有一个条件成立,久返回true
两个条件都是false时,返回false
not 条件
使true变成为false
使false变成为true
石头剪刀布的游戏案例:
#导入随机函数包
import random
#将随机值赋值
diannao = random.randint(1,3)
#判断电脑的出拳
if diannao == 1:
jiqi = "剪刀"
elif diannao == 2:
jiqi = "石头"
else:
jiqi = '布'
# diannao = "石头"
wanjia = input('请出拳:剪刀:1,石头:2,布:3')
print('玩家出的拳是%s,电脑出的拳是%s' % (wanjia,jiqi))
if (wanjia =="剪刀" and jiqi =="布") \
or (wanjia == "石头" and jiqi == "剪刀") \
or (wanjia == "布" and jiqi == "石头"):
print('恭喜玩家,胜利!')
elif wanjia == jiqi:
print('游戏结束,平局了')
else:
print('很遗憾:你输了,电脑胜利!')
打印小星星及九九乘法表:
#打印小星星:
x = 1
y = 1
while x<5:
while y < 5:
print("*"*y)
y +=1
x +=1
打印九九乘法表:
x = 1
while x<10:
y = 1
while y < 10:
c = x*y
print("%d*%d=%d " %(x,y,c),end="\t")
y += 1
print("")
x +=1