Python教程

Python-day01课上练习

本文主要是介绍Python-day01课上练习,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

python提供了一个命令去下载安全的工具包 pip install

由于我们语言是外国人开发的,很多工具包都是在国外的网站上,所以下载很慢

这时候就需要我们去修改下载源

import requests
import keyword

定义一个变量

shou_id = 1
print(shou_id)

修改变量的值

shou_id = 2
print(shou_id)
shou_id = "hello,world"
print(shou_id)

Python 对变量名的大小写非常敏感,一下表示两个不同的变零

aaa = 12
AAA = 23

import keyword

查看 python 的关键字

print(keyword.kwlist)

shou_id = 10
print(shou_id)

使用python内置函的type方法查看变量的类型

print(type(shou_id))

同一变量可以反复赋值,而且还可以赋不同类型的值

shou_id = '阿涛加油!!'
print(shou_id)

使用python的内置type方法查看变量的类型

print(type(shou_id))

如果定义一个常量,常量通常表示“不能变的量”

如过常量由大写字母组成,我们约定俗成的认为它是一个长常量,但是其值依旧是可以给修改的

PI = 3.1415
print(PI)
print(type(PI))
PI = 10
print(type(PI))

注释

单行注释

多行注释 ''' 要注释的内容 '''

多行注释 """ 要注释的内容 """

'''
我可以注释多行
'''
"""
我是多行注释
"""

print shou_id # 在python3.X版本中是不加小括号的

python中的字符串 单引号都可以表示一个字符串

print('单引号可以表示括起来的字符串')
print("双引号可以表示括起来的字符串")

使用逗号,隔开变量与其他剩余内容,则print在输出时会依次打印各个字符串

或者变量遇到逗号时会输出一个空格

shou_id = 30
print("shou_id的值是:", shou_id)

print("shou_id 的值是:"+ shou_id) #python中不允许使用加号

print("shou_id 的值是:"+"shou_id") # shou_id 的值是:shou_id
print(shou_id + 2)
print(shou_id + 2 + 22.3)

需求 打印20 个 一

print("哈哈" * 20)

科学计数法表示较大的float类型的数据类型

print(3.14e9)

转义字符的演示

print("阿涛现在十八岁\n月入两万") # \n表示换行符
print("阿涛现在十八岁\t月入两万") # \t表示空格符

前面加上 r 表示取消转义

print(r"哈哈哈\n呵呵呵")
print(r"哈哈哈\t呵呵呵")

bool类型

print("3>4", 3 > 4) # 3>4 False
print("4>3", 4 > 3) # 4>3 True

非运算符

print(not 3 > 7)
print(type(None)) # <class 'NoneType'>

算数运算符

+

print(3 + 4)

-

print(10-4)

*

print(12 * 3)

/

print(10 / 3) # python 中的 / 结果是有小数的

//

print(10 // 3) # 表示整除,取整数部分,不会四舍五入

**幂次方

print(3**3) # 求出 2 的三次方
print(3 ** (2+3))

函数 int() float() str() bool() 分别用于将变量转换成正型。浮点型,字符转型和布尔型

shou_id = 40
print("shou_id", shou_id, type(shou_id))
shou_id = float(shou_id)
print("shou_id", shou_id, type(shou_id))
shou_id = str(shou_id)
print("shou_id", shou_id,type(shou_id))

shou_id = 30.2
print("shou_id", shou_id, type(shou_id))
shou_id =int(shou_id)
print("shou_id", shou_id, type(shou_id))
shou_id = bool(shou_id)
print("shou_id", shou_id, type(shou_id))

python中的0对应bool类中的False

shou_id = 0
print("shou_id", shou_id, (type(shou_id)))
shou_id = bool(shou_id)
print("shou_id", shou_id, type(shou_id)) # shou_id False <class 'bool'>

某些变量无法转换成数值类型的变量

shou_id = "你好!"

shou_id = int(shou_id)

print(shou_id) # ValueError

python 中内置的方法isinstance主要是判断类型的

print(isinstance(shou_id, int)) # True
shou_id = "你好!"
print(isinstance(shou_id, float)) # False

重点

列表 包含索引的概念,从左往右都是从 0 开始标号的

python 语言中所有的索引都是从 0 开始计数的,如果列表中有 n 个元素,

n那么最后一个元素的索引就是 n-1

列表中的元素用[] 括起来,且随便存放什么元素都可以 元素可以重复

list1 = ['阿涛', 19, 55, 'bata', 23.55, True, 'A', 'b', 'A']
print(list1)
print(type(list1)) # <class 'list'> 列表的类型是list类
list1.append('cad') # 向列表中尾部添加元素
print(list1)

remove()方法使用于要知道要删除的值的情况

list1.remove('A')
print(list1)
print(type(list1))

当我们不知道具体的元素值的,但是知道元素的索引位置时,我们可以使用del函数配合列表索引

删除索引位置的元素或者使用pop 方法

list1.pop(4) 删除的是下标为 4 的列表(从左往右从 0 开始)

print(list1)

list1.pop(-3) 从右往左的下标从 -1 开始,

print(list1)

del (list1[-3]) # 将倒数第三个元素删除

print(list1)

del (list1[3]) #将下标为3的元素删除

print(list1)

获取元素返回值 列表名(索引)

获取第4个元素

i = list1[3]
print(i)
i = list1[-3]
print(i)

python 内置的用于判断列表长度的函数为 len()

i = len(list1)
print(i)
print(list1[1:3]) # [19, 55] 含头不含尾

需求: 从头获取到尾 美两步获取一个如果不给步长默认是一个步长

print(list1[0::2]) # ['阿涛', 55, 23.55, 'b', 'cad'] 每个两个获取元素
print(list1[0::3]) # ['阿涛', 'bata', 'b'] 每隔三个获取一个元素

需求:按照顺序获取所有的元素

print(list1[0:]) # 从 0 开始 一直到末尾结束

需求:逆序输出所有的元素

print(list1[-1::-1]) # 从后往前输出
print(list1[::]) # 从前往后输出
print(list1[:]) # 从前往后输出

列表嵌套

list2 = ['a', 'b', 'c', ['hello', 'world', 'big', 'data'], list1, '厉害啊!']
print(list2)
print(list2[3][2])
print(list2[-2][2])

元祖

tuple1 = ('s', 'e', 23, True, 'hello')
tuple2 = ('哈哈', tuple1, 23)
print(tuple2)

元组一旦确定就不可更改

tuple1[2] = 2 # TypeError: 'tuple' object does not support item assignment

print(tuple1, type(tuple1))

字典 其中键不允许重复

dict1 = {1001: "小红", 1002: "小花", 1003: "小孩", 1001: "小可爱", 1005: "小小", "id": "菠萝"}
print(dict1) # {1001: '小可爱', 1002: '小花', 1003: '小孩', 1005: '小小', 'id': '菠萝'}

通过键找值

print(dict1[1003])

print(dict1[1004]) # KeyError: 1004

判断字典中是否包含某个键

print(1003 in dict1) # True
print(1009 in dict1) # False

获取字典中所有的键 keys() 返回的不是列表类型的

print(dict1.keys(), type(dict1.keys())) # dict_keys([1001, 1002, 1003, 1005, 'id']) <class 'dict_keys'>

获取字典中的所有的值 values() 返回的不是列表类型的

print(dict1.values(), type(dict1.values())) # dict_values(['小可爱', '小花', '小孩', '小小', '菠萝']) <class 'dict_values'>

获取字典中所有的键值对 items() 返回的不是列表类型

print(dict1.items(), type(dict1.items)) # <class 'builtin_function_or_method'> 内置函数

字典的删减有三种方法

del(dict1[1003])

print(dict1)

dict1.pop(1002)

print(dict1)

dict1.clear() # {}

print(dict1)

集合(set)是一种无序集,它是一组键的集合,不存储值,

在集合中重复的键是不被允许的,集合可以用与去除重复的值

set1 = {'1001', 1003, '1002', '阿涛', True, 1003, '1002', 1004}
print(set1) # 无序,每次顺序都不一致 {True, '阿涛', 1003, 1004, '1002', '1001'}

面试题:现有一个列表,想办法对它去重

list3 = ['a', 'b', 'c', 'a', 'r', 'c', 'k']
print("list3:", list3)
set2 = set(list3) # 将列表转化为集合类型,就能达到去重的目的
print("set2", set2, type(set2))

注意:如果仅有{}来创建的话,并不是set集合,而是字典

如果仅仅是想创建一个空的set集合的话就使用set()

set1 = {}
print(type(set1)) # <class 'dict'> 字典
set1 = ()
print(type(set1)) # <class 'tuple'> 元组
set1 = set()
print(type(set1)) # <class 'set'> # 集合

并集 交集 差集,对称差

set3 = {'xiaoHei', 'xiaoHong', 'xiaoZi', 'xiaoKeAi', 'xiaoLi', 'xiaoXiao'}
set4 = {'xiaoHei', 'xiaoHong', 'xiaoLiu', 'xiaoQing', 'xiaoLu', 'xiaoWang'}

求并集

print(set3 | set4) # 即包括了 set3 和set4

求交集

print(set3 & set4) # {'xiaoHong', 'xiaoHei'}

求差集

print(set3 - set4) # set3 中独有的
print(set4 - set3) # set4 中独有的

对称差

print(set3 ^ set4) # 即set3 和 set4 中各自独有的合并集

控制结构

True , False 是比较显式的真和假,

而在Python 中以下值都活被看做是假(False):

0,False,None,"",'',[],(),{},空的set集合

set5 = set()
bool1 = bool(set5)
print(bool1) # False

If选择语句

格式1:

if 判断条件:

if执行代码

if 3 > 2:

print('答对了!')

格式2:

if 判断条件:

if执行代码

else:

else执行代码

需求:如果血量大于60,说明健康

HP = 50

if HP > 60:

print('目前状态:健康!')

else:

print('目前状态:不健康!')

格式3:

if 判断条件:

if执行代码

elif 判断条件:

elif执行代码

...

else:

else执行代码

HP = 100
if HP >= 100:
print('状态健康!')
elif 100 > HP >= 60:
print('状态一般!')
elif 60 > HP > 0:
print('状态危险!')
else:
print('死亡...')

需求:比较三个数的大小(嵌套)

i1 = 39
i2 = 59
i3 = 3331
if i1 > i2:
if i1 > i3:
print('最大值为 i1:', i1)
else:
print('最大值为 i3:', i3)
else:
if i2 > i3:
print('最大值为 i2:', i2)
else:
print('最大值为 i3:', i3)

for 循环

语句格式

for 元素变量 in 序列:

for 循环体的内容

range() 的作用是将序列变成一个可以进行的迭代器的对象

a = range(5)
print(a, type(range)) # range(0, 5) <class 'type'>
for i in a:
print(i, type(i))

题目使用python实现九九乘法表

通过预习后,使用python一行实现九九乘法表

while 循环

语句格式

while 判断条件:

要循环的语句体

HP = 20
while HP <= 30:
print(HP)
HP = HP+1

# 死循环

while True:

print('我死循环了,快让我停下来!')

这篇关于Python-day01课上练习的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!