会员可以在此提问,百战程序员老师有问必答
对大家有帮助的问答会被标记为“推荐”
看完课程过来浏览一下别人提的问题,会帮你学得更全面
截止目前,同学们一共提了 134268个问题
JAVA 全系列/第一阶段:AI驱动的JAVA编程/JAVA入门和背景知识 29942楼

from django.db import models


# Create your models here.
class Category(models.Model):
    """类别表"""
    cname = models.CharField(max_length=10)  # 类别名称

    def __str__(self):
        return self.cname


class Goods(models.Model):
    """商品表"""
    gname = models.CharField(verbose_name="商品名称", max_length=10)  # 商品名称
    gdesc = models.CharField(verbose_name="商品描述", max_length=10)  #
    oldprice = models.DecimalField(verbose_name="原价", max_digits=5, decimal_places=2)
    price = models.DecimalField(verbose_name="现价", max_digits=5, decimal_places=2)
    category = models.ForeignKey(Category, on_delete=models.CASCADE, verbose_name="类别ID")

    def __str__(self):
        return self.gname


class GoodsDetailName(models.Model):
    """详情名称表"""
    gdname = models.CharField(verbose_name="详情名称", max_length=30)

    def __str__(self):
        return self.gdname


class GoodsDetail(models.Model):
    """商品详情表"""
    gdurl = models.ImageField(verbose_name="详情图片地址", upload_to='')
    detailname = models.ForeignKey(GoodsDetailName)
    goods = models.ForeignKey(Goods)

    def __str__(self):
        return self.detailname.gdname


class Size(models.Model):
    """尺寸表"""
    sname = models.CharField(verbose_name="商品尺寸", max_length=10)

    def __str__(self):
        return self.sname


class Color(models.Model):
    """颜色名称"""
    colorname = models.CharField(verbose_name="颜色名称", max_length=10)
    colorurl = models.ImageField(verbose_name="颜色图片地址", upload_to='')

    def __str__(self):
        return self.colorname


class Inventory(models.Model):
    """库存表"""
    count = models.PositiveIntegerField(verbose_name="库存数量")
    color = models.ForeignKey(Color)
    goods = models.ForeignKey(Goods)
    size = models.ForeignKey(Size)



d96484e9db0c48537ef6fe291b72108.png




老师,我这个一直报错,复制教学代码进来也是这个样子

Python全系列/下架-第十二阶段:Python_大型电商项目(5天后下架)/Django项目阶段-电商项目(旧) 29943楼
Python全系列/第九阶段:Flask百战电商后台系统/Flask百战电商后台项目 29944楼

shop.zip

老师,这里面有两个导入的错误,但我都是按照课程导入的,怎么会出错呢

Python全系列/第九阶段:Flask百战电商后台系统/Flask百战电商后台项目 29945楼

from fake_useragent import UserAgent
import requests
from lxml import etree  #解析库


def get_html(url):
    '''
    param url:要爬取的地址
    return:返回html
    '''

    headers={"User-Agent":UserAgent().chrome}
    resp=requests.get(url,headers=headers) #发送请求
    if resp.status_code ==200:
        resp.encoding='utf-8'  #设置字符集
        return resp.text
    else:
        return None

def parse_list(html):
    '''
    param url:传递进来一个有电影列表的html
    return:返回一个电影列表的url
    '''
    # if html:    #html在有值的情况下在做解析
    e=etree.HTML(html)
    list_url=['http://maoyan.com{}'.format(url) for url in e.xpath('//div[@class="movie-item-hover"]/a/@href')]
    return list_url

def pares_index(html):
    '''
    param url:传递进来一个有电影具体信息的html
    return:提取好的电影具体信息
    '''
    e = etree.HTML(html)
    name = e.xpath('//h1[@class="name"]/text()')
    type = e.xpath('//li[@class="ellipsis"][1]/a/text()')
    content = e.xpath('//span[@class="dra"]/text()')

    return {"name":name,"type":type,"content":content}

#     actors=e.xpath('')
#     actors=format_data(actors)

# 有重复的演员名字,需要去重
# def format_data(actors):
#     actor_set=set()
#     for actor in actors:
#         actor_set.add(actor.strip())  #strip去空格
#         return actor_set

def main():

    '''控制上述方法的实施,分配相应的url'''
    num = int(input('请输入多少页:'))
    for page in range(num):
        url="https://maoyan.com/films?showType=1&offset={}".format(page*30)

        list_html=get_html(url)  #发送请求
        list_url=parse_list(list_html)  #解析list_html,返回list_url每个电影的信息
        for url in list_url:
            info_html=get_html(url)
            movie = pares_index(info_html)
            print(movie)

if __name__ =='__main__':
    main()

老师,这个代码只运行到请输入多少页,然后就运行结束了。哪里出错了?

Python全系列/第十六阶段:Python 爬虫开发/爬虫反反爬- 29946楼
Python全系列/第四阶段:函数式编程和核心特性/函数式编程核心(高阶函数、闭包等) 29947楼

maven_demo2.zip 老师报500了 找了半天没找到哪里有问题 能帮我看一下吗

图片.png


JAVA 全系列/第七阶段:项目管理与SSM框架/Maven 29948楼
Python全系列/第一阶段:AI驱动的Python编程/函数和内存分析 29949楼
Python全系列/ 第十五阶段:自动化操作办公软件、邮件、定时任务等/自动化操作办公软件、邮件、定时任务等 29950楼
JAVA 全系列/第一阶段:AI驱动的JAVA编程/面向对象详解和JVM底层内存分析 29951楼

#coding=UTF-8

from threading import Thread, Event
from time import sleep
from random import randint


def door():
    global state
    while True:
        if even.is_set():#如果even事件为真,则执行
            print('我是门:门开着,可以通行~')
            sleep(1)
        else:
            print('我是门:门关了~请刷卡!')
            state = 0#门已关闭,开门循环重置为0
            even.wait()#even事件为等待,进程暂停
        if state > 3:#state在3次循环后
            print('我是门:超过3 秒,门自动关门')
            even.clear() #even事件为假,所有even.wait()发挥作用,将进程暂停
        state +=1#循环一次,state+1,控制门开启时间
        sleep(1)#线程暂停1秒,控制循环时间
def person():
    global state
    n = 0#人员编号
    while True:
        if even.is_set():
            print('我是人:门开着:{}号进入'.format(n))
        else:
            even.set()#将even事件标记为真
            state = 0#开门循环重置为0
            print('我是人:门关着,{}号人刷卡进门'.format(n))
        n += 1
        sleep(randint(1, 10))#随机1-10米秒来一个人,模拟刷卡
if __name__ == '__main__':
    state = 0
    even = Event()
    even.set()
    d = Thread(target=door)
    d.start()
    p = Thread(target=person)
    p.start()

老师,在执行的时候应该先提示

我是门:门关了~请刷卡!

但是我的这个程序,直接就是开着门的,请帮忙看看问题在哪里,谢谢

图片.png

Python全系列/第三阶段:Python 网络与并发编程/并发编程 29952楼
JAVA 全系列/第二阶段:JAVA 基础深化和提高/容器(旧) 29954楼
Python全系列/ 第十五阶段:自动化操作办公软件、邮件、定时任务等/自动化操作办公软件、邮件、定时任务等 29955楼

课程分类

百战程序员微信公众号

百战程序员微信小程序

©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园
网站维护:百战汇智(北京)科技有限公司
京公网安备 11011402011233号    京ICP备18060230号-3    营业执照    经营许可证:京B2-20212637