第二章 变量和简单数据类型

2.1 输出一个hello world

1
2
print("hello world")
#用#进行注释

2.2 变量的定义

1
2
3
4
5
num1 = 1 #整型
num2 = 1.0 #浮点型
str1 = 'abcd' #字符串型
str2 = "abcd" #字符串型
bool1 = True #布尔型

直接用 变量名=变量值 来定义,系统自动检测变量的类型

2.3.1 使用方法修改字符串的大小写(title,upper,lower)

1
2
3
4
name = "i loVe pYthon"
print(name.upper()) #临时转为大写
print(name.lower()) #临时转为小写
print(name.title()) #临时首字母大写

2.3.2 合并字符串(str + str)

1
2
3
4
5
6
7
first_name = "abc"
last_name = "def"
name = first_name + last_name
print(name)
================ 运行结果 ================
abcdef
>>>

2.3.4 删除空白(str.strip() str.lstrip() str.rstrip() )

1
2
3
4
5
6
7
8
9
c = " python "
print("."+c.rstrip()+".") #删除右边的空白
print("."+c.lstrip()+".") #删除左边的空白
print("."+c.strip()+".") #删除两边的空格
================ 运行结果 ================
. python.
.python .
.python.
>>>

第三章 列表简介

3.1 建立并访问列表

1
2
3
arr = ['a','b','c']
print(arr[0]) #类似于C,用下标的方式寻找
print(arr[-2]) #访问倒数第二个元素

3.2 修改添加和删除元素

1.修改元素

1
2
3
s = ["abc","def"]
s[0] = "ghi" # 修改
>>>

2.添加元素(添加append、插入insert)

1
2
3
4
5
6
7
8
s = ["a","b","c","d"]
s.append("添加了e")
s.insert(1,"插入了python")
print(s)
============= RESTART: C:\Users\Administrator\Desktop\python.py =============
['a', '插入了python', 'b', 'c', 'd', '添加了e']

>>>

3.删除元素

1
2
3
4
5
s = ["a","b","c","d"]
del s[0] #无返回值删除
temp1 = s.pop() #删除最后一个元素 并返回
temp2 = s.pop(1) #删除index=1的元素 并返回
s.remove('b') #根据值删除元素

3.3 组织列表(永久排序,临时排序,永久反转,确定长度)

1
2
3
4
5
6
arr = [2,1,3,4,5]
arr.sort() #顺序永久排序
arr.sort(reverse=True) #倒序永久排序
print(arr.sorted) #临时顺序排序
arr.reverse() #永久反转
lenth=len(arr) #获取列表的长度

第四章 操作列表

4.1 遍历列表(for语句)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
ss = ['ab','cd','ef']
for s in ss:
print('进入循环')
print(s)
print("Thanks")
============= RESTART: C:\Users\Administrator\Desktop\python.py =============
进入循环
ab
进入循环
cd
进入循环
ef
Thanks

>>>

1.第二行代码让python从列表ss中依次取出一个元素,并将其储存在s变量中
2.在代码行for s in ss:后面缩进的代码行都是循环的一部分

4.3 创建数字列表

1.使用range()函数

1
2
3
4
5
6
7
8
for value in range(1,5):
print(value)
============= RESTART: C:\Users\Administrator\Desktop\python.py =============
1
2
3
4
>>>

实际上range()函数返回一个临时的列表

2.用list()将range()的结果转换为列表

1
2
3
4
5
numbers = list(range(1,5))
print(numbers)
============= RESTART: C:\Users\Administrator\Desktop\python.py =============
[1, 2, 3, 4]
>>>

3.创建一个包含前10个整数平方的列表

1
2
3
4
5
6
7
arr = []
for value in range(1,11):
arr.append(value**2)
print(arr)
============= RESTART: C:\Users\Administrator\Desktop\python.py =============
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
>>>

value2表示value的平方,同理value\n代表value的n次方

4.对数字进行简单的统计计算(min,max,sum函数)

1
2
3
4
5
6
7
>>> digits = [1,2,3,4,5,6,7,8,9,10]
>>> min(digits)
1
>>> max(digits)
10
>>> sum(digits)
55

5.列表解析(一行代码生成 前10个整数平方的 列表)

1
arr = [value**2 for value in range(1,11)]

for value in range(1,11)语句依次对value赋值

4.4 使用列表的一部分(切片)

1.切片

1
2
3
4
5
6
7
8
9
>>> ss = ['a','b','c','d','e','f']
>>> print(ss[1:3]) #输出下标 1-2 的元素
['b', 'c']
>>> print(ss[:3]) #输出前三个元素
['a', 'b', 'c']
>>> print(ss[1:]) #输出下标 1 之后的元素
['b', 'c', 'd', 'e', 'f']
>>> print(ss[-2:]) #输出倒数2个元素
['e', 'f']

2.遍历切片

1
2
3
4
5
6
>>> ss = ['a','b','c','d','e','f']
>>> for temp in ss[1:4]:
>>> print(temp)
b
c
d

3.复制列表

1
2
3
ss = ['a','b','c','d','e','f']
temp1 = ss[:]
temp2 = ss

temp1 = ss[:]为值的复制,若修改temp1,ss不会受到影响
temp2 = ss为地址的复制,相当于C++中的创建引用。若修改temp2,那么ss也会被修改

4.5 元组(不可变的列表)

1
2
3
4
5
6
7
8
9
10
#定义元组(用括号)
arr = (1,2,3,4)
print(arr[0])
#遍历元组的值
for temp in arr:
print(temp)
#修改元组的值(不能修改元组的元素,但是可以给存储元组的变量赋值
arr1 = (1,2)
arr1[0] = 2 ×
arr1 = (3,4) √

第五章 if语句

5.1 基本句法

1
2
3
4
5
6
7
8
9
10
11
old = 18
if old<2:
print("婴儿")
elif old>=2 and old<4:
print("蹒跚学步")
elif old>=4 and old<13:
print("儿童")
elif old>=13 and old<18:
print("青少年")
else:
print("成年人")

5.2 用if检查列表中是否有某一个元素

1
2
3
4
5
ss = ['a','b','c']
if 'a' in ss:
print("YES")
else:
print("NO")

‘a’ in ss 如果a能在ss列表中找到,那么就返回True

5.3 确定列表不是空的

1
2
3
4
5
6
>>> ss = []
>>> if ss:
>>> print("不是空的")
>>> else:
>>> print("是空的")
是空的

第六章 字典

6.2 使用字典

1.字典的定义

1
dic = {'name':'Amy','age':18}

2.访问字典中的值(以1的定义为例)

1
print(dic['name'])

字典是一系列 键-值对 ,与键相关联的可以是 数字、字符串、列表甚至字典(任何python对象都可以与其相关联)

3.添加 键-值对

1
2
dic = {'name':'Amy','age':18}
dic['score'] = 100

添加’score’-100键-值对到字典的最后面

4.修改字典中的值

1
2
dic = {'name':'Amy','age':18}
dic['name'] = 'Tom'

5.删除键-值对

1
2
3
4
5
6
dic = {'name':'Amy','age':18}
del dic['name']
print(dic)
============= RESTART: C:\Users\Administrator\Desktop\python.py =============
{'age': 18}
>>>

6.3 遍历字典

1.遍历所有的键-值对(用items()方法)

1
2
3
4
5
6
7
8
9
10
11
12
13
dic = {
'name':'Amy',
'age':18,
'score':100
}
for key,value in dic.items():
print(key + ':' + str(value))
============= RESTART: C:\Users\Administrator\Desktop\python.py =============
name:Amy
age:18
score:100

>>>

1.dic.items() 分别将键与值赋值给key与value
2.str(value)将数值强制转换为字符型,才可以用+运算符

2.遍历字典中所有的键(keys()方法)与值(values()方法)

1
2
for key in dic.keys():######
for value in dic.values():######

遍历键也可以不用keys,直接for key in dic:,但是用keys方法更容易被理解

3.按顺序遍历字典中所有的键

1
for key in sorted(dic.keys()):#####

使用sorted函数将dic的键列表暂时排序

4.用set()函数去重

1
2
3
4
5
6
7
dic = {1:'a',2:'b',3:'a'}
for value in set(dic.values()):
print(value)
============= RESTART: C:\Users\Administrator\Desktop\python.py =============
a
b
>>>

6.4 嵌套

P93:有时候,需要将一系列字典存储在列表里,或将列表作为值存储在字典里,这称为嵌套(略)

第七章 用户输入和while循环

7.1 用函数input()进行用户输入

1
2
3
4
5
6
7
name = input("Enter your name: ")
name = 'Hello ' + name
print(name)
============= RESTART: C:\Users\Administrator\Desktop\python.py =============
Enter your name: Tom
Hello Tom
>>>

7.2 while循环简介

1
2
3
4
i = 1
while i<=5:
print(i)
i+=1

while语句内部也可以用continue和break,规则与C++相同

第八章 函数

8.1 定义函数

python莫得数据类型(好吧,是弱化了),所以不需要

1
2
3
4
def show():
'''文档字符串,可以用来描述函数功能'''
print('Hello World')
show()

8.2 传递实参

1
2
3
4
5
6
7
8
9
10
def add(a=-1,b=-1):
'''返回两数之和'''
return str(a+b)

#使用默认值参数
print(add()) #输出-2
#按顺序传参
print(add(1,1)) #输出2
#顺序随意的关键字实参
print(add(b=2,a=2)) #输出4

8.4 传递列表

1
2
3
4
5
6
def fun(lists):
lists[0] = 666 # 修改列表的值
for list in lists:
print(list)
a = [1,2,3,4]
fun(a) # 传递列表

如果要禁止函数修改列表的话,可以用function_name(list_name[:]的方式进行调用

1
2
3
4
5
6
def fun(lists):
lists[0] = 666 # 修改列表的值
a = [1,2,3,4]
fun(a[:]) # 传入列表副本
for temp in a:
print(temp) # 原列表a不会改变

8.5 传递任意数量的实参

形参名*names中的星号让python创建一个名为name的空元组

1
2
3
4
5
6
7
def fun(*names):
'''打印若干名字'''
print(names)
fun("张三","李四","王五")

============= RESTART: C:\Users\Administrator\Desktop\python.py =============
('张三', '李四', '王五')

*name必须放在形参的最后位置
程序会先处理位置实参关键字实参,余下的实参都被收集到*name

1
2
3
4
5
6
7
8
def fun(school,department,*names):
print(school+" "+department)
print(names)
fun("家里蹲大学","计算机学院","张三","李四","王五")

============= RESTART: C:\Users\Administrator\Desktop\python.py =============
家里蹲大学 计算机学院
('张三', '李四', '王五')

加两个星号**还可以让python创建一个空字典

1
2
3
4
5
6
7
8
def fun(name,age,**others):
'''将名字和年龄对应'''
map = {}
map[name] = age
for key,value in others.items():
map[key] = value
print(map)
fun("张三",19,李四=18,王五=20)

8.6 将函数存储在模块中 (python中的”头文件”)

python模块类似于C++的头文件
比如:

C:\Flying\module.py

1
2
3
4
5
6
def fun1():
print("fun1")
def fun2():
print("fun2")
def fun3():
print("fun3")

在同目录下有另一个py文件
import module的方式导入module.py的函数
模块名.函数名()的方式进行调用

1
2
3
4
5
6
7
8
9
import module
module.fun1()
module.fun2()
module.fun3()

============= RESTART: C:\Users\Administrator\Desktop\python.py =============
fun1
fun2
fun3

还可以导入模块中特定的函数
from 模块名 import 函数名

1
2
from module import fun1
fun1() # 可直接用函数名进行调用

也可以取别名
from 模块名 import 函数名 as 函数别名

1
2
from module import fun1 as f
f()

给模块指定别名
import 模块名 as 模块别名

1
2
import module as m
m.fun1()

甚至可以直接导入模块中的所有函数
from 模块名 import *

1
2
3
4
from module import *
fun1()
fun2()
fun3()

 评论

载入天数...载入时分秒...