学习廖雪峰的Python教程所记的笔记
原文https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000
#!/usr/bin/env python3
# -*- coding:utf-8 -*-
#第一行告诉Linux/OS X系统,这是一个Python可执行程序,Windows系统会忽略这个注释
#第二行注释是为了告诉Python解释器,按照UTF-8编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码。
一、python基础
1、字符串和编码
'''
print (u'中文测试正常')
print('Hello,%s' % 'world')
print('Hello,%s, you have $%d billion' % ('YC',1))
print ('输出%%3:%%%.3d' % 3.14159)
print('Hello,{0},成绩提升了{1:.1f}%'.format('小明',17.123))
'''
2、list和tuple
'''
classmates =['Jim','LiLei','Lucy','Lily']
classmates.append('HanMeimei')
classmates.pop(0)
classmates[1]='XiaoMing'
print('\nclassmates is %s,\n%d in total,\nfirst is %s,last is %s'%(classmates,len(classmates),classmates[0],classmates[-1]))
s2=[False,45]
s=['Apple',123,True,s2]
print (s,len(s))
print(s[3][1])
class1 = ('Jim','LiLei','Lucy','Lily')
'''
3、条件判断
'''
age =input('\n请输入一个你的年龄:\n')
age =int(age)
if age >= 18 :
print('You are adult')
else:
print('You are teenager')
'''
test
'''
weight = float(input('输入体重,单位为kg\n'))
height = float(input('输入身高,单位为m\n'))
BMI =weight/(height*height)
print(BMI)
if BMI < 18.5:
print('too light')
elif BMI< 25:
print('normal')
elif BMI< 28:
print('too heavy')
elif BMI< 32:
print('fat')
else:
print('too fat')
'''
4、循环
Python的循环有两种,
第一种是for...in循环,依次把list或tuple中的每个元素迭代出来
for x in ...循环就是把每个元素代入变量x,然后执行缩进块的语句
'''
names = ('Jim','LiLei','Lucy','Lily')
for name in names:
print('Hello,',name,'!')
test1、1-10的整数和
sum =0
for i in [1,2,3,4,5,6,7,8,9,10]:
sum = sum + i
print(sum)
test2、1-100的整数和
sum = 0
for i in range(101):
sum = sum+i
print(sum)
'''
第二种是while循环,只要条件满足,就不断循环,条件不满足时退出循环。
'''
计算100以内的奇数和
sum=0
n = 99
while n>0:
sum = sum+n
n =n-2
print(sum)
'''
break提前退出循环,结束整个循环
'''
n=1
while n<=100:
if n>10:
break
print(n)
n=n+1
print('END')
'''
continue 跳过当前循环,开始下一次循环
'''
打印1-10的奇数
n=0
while n<10:#冒号别忘掉
n=n+1
if n%2 ==0:
continue
print(n)
'''
注意:死循环
'''
如果代码写得有问题,会让程序陷入“死循环”,也就是永远循环下去。
这时可以用Ctrl+C退出程序,或者强制结束Python进程。如:
while 1:
print('烫烫烫')
'''
5、使用dict和set
5.1.dict
'''
Python内置了字典:dict支持,dict全称dictionary,其他语言中也称为map。
使用键-值(key-value)存储,具有极快的查找速度。
d={'A':90,'B':80,'C':70,'D':60,'E':50}
d['C']=71
print('T' in d)#key 'T'不存在d中,返回False
print(d.get('F'))#key 'F'不存在,返回None
d.get('F',-1)#key 'F'不存在,返回-1
d.pop('C')
print(d)
d['C']=69
print(d)
注意,dict内部存放的顺序和key放入的顺序无关。
dict和list比较,有以下两个特点:
1.查找和插入速度快,不会随着key的增加而变慢
2.需要占用大量的内存,内存浪费多。
dict是用空间换取时间的一种方法。
dict中的key是不可变对象。
通过key计算位置的算法成为哈希算法(Hash)。
'''
5.2.set
set 一组key的集合,可以看成数学意义上的无序和无重复元素的集合
'''
L =[6,7,8]
s1 = set([1,2,3,L])#TypeError: unhashable type: 'list'
s1 = set([1,2,3,])
s1.add(5)#添加元素add
print(s1)
s1.remove(3)#删除元素remove
print(s1)
s2 = set([2,3,4])
print(s1&s2,s1|s2)
'''