# Web开发基础入门:城市天气、数字计算与JSON解析


背景介绍

Web开发的基础知识涵盖输入输出处理、数据验证与逻辑处理。本博客围绕四个典型应用场景展开,通过代码实现展示如何处理城市天气、数字计算和JSON解析任务。


1. 城市天气信息处理

问题描述

输入:用户输入城市名称(如”北京”)
输出:显示当前城市天气信息(如”晴天”)

功能实现

# 城市天气信息处理
def get_weather_info(city_name):
    # 1. 读取输入城市名称
    input_city = input("请输入城市名称:")

    # 2. 校验输入并输出结果
    if input_city.strip() == "北京":
        print(f"天气信息:晴天")
    else:
        print("城市名称无效,请重新输入!")

# 示例运行
get_weather_info("上海")

逻辑分析

  • 使用input()获取用户输入,直接输出结果。
  • 标注使用Python语言。
  • 简单的输入验证处理,符合Web开发基础要求。

2. 数字计算任务

问题描述

输入:用户输入一个数字(如123)
输出:计算并输出结果(如356)

问题示例

输入:123
输出:356

代码实现

# 数字计算任务
def calculate_result(number):
    # 1. 转换为整数
    number = int(number)

    # 2. 进行数学运算
    result = number * 3  # 示例计算,具体逻辑可根据需求修改

    # 3. 输出结果
    print(f"计算结果:{result}")

# 示例运行
calculate_result("123")

逻辑分析

  • 使用int()转换字符串数字。
  • 简单的乘法运算,符合数学处理的需求。

3. JSON数据解析任务

问题描述

输入:用户输入JSON数据(如{“name”: “张三”, “age”: 25})
输出:解析并显示数据结构

问题示例

输入:{“name”: “李四”, “age”: 30}
输出:解析并显示数据结构

代码实现

# JSON数据解析任务
import json

# 1. 读取输入JSON数据
json_data = '{"name": "李四", "age": 30}'

# 2. 解析并输出数据结构
with open("data.json", "r", encoding="utf-8") as f:
    data = json.load(f)

print(f"解析后数据结构:{data}")

# 示例运行
json_data = {"name": "李四", "age": 30}
json_result = json.loads(json_data)
print(json_result)

逻辑分析

  • 使用json.load()读取JSON数据。
  • 示例代码展示如何处理JSON数据结构。

4. API请求验证任务

问题描述

输入:用户输入API请求参数(如”host: 192.168.1.1″)
输出:验证并返回请求成功状态(如”OK”)

问题示例

输入:host: 192.168.1.1
输出:OK

代码实现

# API请求验证任务
def validate_api_request(param):
    # 1. 检查参数格式
    try:
        from ipinfo import get_ip_info
        ip = param.split(":")[0]
        response = get_ip_info(ip)
        if response.status == 200:
            print("请求成功状态:OK")
        else:
            print("请求失败状态:{response.status}")

    except Exception as e:
        print(f"请求验证失败:{e}")

    return "OK"

# 示例运行
response_status = validate_api_request("host: 192.168.1.1")

逻辑分析

  • 使用ipinfo库验证IP地址格式。
  • 示例代码展示如何验证API请求成功状态。

总结

通过本博客的学习,我们掌握了基础的输入输出处理、数据验证以及网络请求验证能力。每个问题均独立运行,代码简洁、易读,符合Web开发基础的要求。掌握这些技能后,可以进一步拓展到前后端开发、API设计等更复杂的场景。