Python超入门(7)__迅速上手操作掌握Python

Python超入门(7)__迅速上手操作掌握Python_第1张图片Python超入门(7)__迅速上手操作掌握Python_第2张图片 

# 31.类
class Point:
    # 构造函数
    def __init__(self, x, y, z):
        self.x = x
        self.y = y
        self.z = z

    # 自定义函数
    def move(self):
        print("move")

    def draw(self):
        print("draw")


# 定义一个Point类的实例point1
# 注意:新建实例的参数要与构造函数一致
point1 = Point(1, 1, 1)

# 为point新建立属性
point1.h = 5
point1.i = 5
point1.j = 5

print(point1.h, point1.i, point1.j)  # 5 5 5

# 使用Point类中定义好的函数
point1.draw()  # draw

point = Point(10, 20, 20)
print(point.x + point.y + point.z)  # 50

// 练习:做一个自我介绍类,负责介绍自己的名字。

class Person:
    def __init__(self, name):
        self.name = name

    def talk(self):
        print(f'Hi, I am {self.name}')


people = Person("zhangsan")
people.talk()  # Hi, I am zhangsan

# 32.继承
class Mammal:
    def walk(self):
        print("walk")

    def none(self):
        pass  # 这是一个没有实际(空)操作的函数,只是作为一个占位符,使程序正常运行。


class Dog(Mammal):  # Dog类继承Mammal类,拥有Mammal类的属性
    def bark(self):
        print("bark")


class Cat(Mammal):  # Cat类,同上
    def be_annoying(self):
        print("annoying")


dog1 = Dog()
dog1.bark()  # bark
dog1.walk()  # walk

# 33.模块

// 在项目中新建converters.py文件

def lbs_to_kg(weight):
    return weight * 0.45


def kg_to_lbs(weight):
    return weight / 0.45

// 主函数

import converters  # 导入建立的功能模块

# 调用模块中的函数
kg = converters.lbs_to_kg(120)
print(kg)  # 54.0
from converters import kg_to_lbs  # 导入功能模块中的函数

# 直接调用模块中的函数(更方便在主函数中调用)
lbs = kg_to_lbs(52)
print(lbs)  # 115.55555555555556
//练习:在项目中创建一个py文件,定义一个查询列表(元组)中最大数的函数。

// utils.py

def find_max(numbers):
    max = numbers[0]
    for number in numbers:
        if number > max:
            max = number
    print(max)

 // 主函数

from utils import find_max

numbers = (12, 23, 3, 32, 4)
find_max(numbers)  # 32
print(max(numbers))  # 32, 也可直接使用内置函数完成查询

# 34.导外部包的常用方式

 // 定义了一个外部包economy,在包内定义一个shipping函数

// def calc_shipping():
//    print("calc_shipping")
import ecommerce.shipping  # 导入包模块

ecommerce.shipping.calc_shipping()  # calc_shipping

from ecommerce import shipping

shipping.calc_shipping()  # calc_shipping

from ecommerce.shipping import calc_shipping

calc_shipping()  # calc_shipping

# 35. 生成随机值(使用内置模块)
import random  # 随机数

for i in range(3):
    print(random.random())  # 生成一个在0到1之间的随机浮点数(包括0但不包括1)。
'''
0.12912375899836237
0.5551522914638384
0.18978329682237072

0.10174765535653596
0.6356867817147159
0.40973587672794365

'''
for i in range(3):
    print(random.randint(1, 10))  # 4 10 9 ,生成1到10的随机整数。

members = ['hi', 'you', 'are', 'ok']
leader = random.choice(members)  # 从给定的列表 members 中随机选择一个成员作为 leader

print(leader)  # you

 // 练习:骰子制作的基本思路

import random


class Dice:
    def roll(self):
        first = random.randint(1, 6)
        second = random.randint(1, 6)
        return first, second


dice = Dice()
print(dice.roll())
'''
(6, 4)
(1, 4)
(3, 1)
'''

# 36. 使用路径
from pathlib import Path

path = Path("ecommerce")
print(path.exists())  # True,检测路径是否存在

# 创建一个指向"ecommerce3"的路径对象将尝试创建路径中指定的目录。
# parents=True意味着如果父目录不存在,也会一并创建。exist_ok=True表示如果目录已经存在,不会引发异常,而是继续执行。
Path("ecommerce3").mkdir(parents=True, exist_ok=True)

# 删除目录
Path("ecommerce3").rmdir()

# 搜索文件,glob方法来遍历某个目录下的所有文件和子目录。
path_search = Path()
for file in path_search.glob('*'):
    print(file)

'''
.idea
converters.py
ecommerce
ecommerce2
main.py
venv
__pycache__
'''
print("______")

# glob方法来遍历某个目录下的所有py文件。
for file in path_search.glob('*.py'):
    print(file)
'''
converters.py
main.py
'''

你可能感兴趣的:(Python,python,开发语言)