Python每日一练---1.基本语法(导包,输入输出)

本文介绍了Python中的基本概念,包括长整数表示方法、变量命名规范、注释使用、打印及输入函数、条件语句、API导入技巧、类型转换、多格式输出、字符串定义与特殊字符处理等。

1.长整数(过长时以L结束)

>>>234423234223243L
2.变量名

字母数字,下划线(不能以数字开头)

3.注销 #

4.打印

print 2*2; print(2*2)

字符串:print("hellopyhon")// print 'hellopython'

5.输入

x=input("x:") #默认标准表达式或者数字

raw_input() #整行输入,字符串

6.if

if 1==2 print' one equals two'

7.API导入

from 包 import 方法名 (from math import sqrt)

使用方式一:

import math
math.floor(32.9)
使用方式二:(cmath不能import)

from math import sqrt
sqrt(9)

8.类型转换

print ‘x=',int(sqrt(9))
9.输出
多格式

print 'x=',x  #会产生空格

换行 ;\ 连接  (\n产生换行)

print x;\
print y

print''' 123
456
789'''
123
456
789
print r'''dsdfdf
fsdfsd\
dfsdf'''
dsdfdf
fsdfsd\
dfsdf
print '''dsdfdf\
fsdfsd\
dfsdf'''
dsdfdffsdfsddfsdf
print '''dsdfdf\
fsdfsd\n\
dfsdf'''
dsdfdffsdfsd
dfsdf

10.字符串

‘’ “” ''' ''' #这三种都可以定义字符串

print '"hhh"'
"hhh"
11.了解某个函数

help(raw_input)
12.格式化输出

print(format())

>>> print(format(12.23434),'6.3f')
('12.23434', '6.3f')
>>> print(format(12.23434,'6.3f'))
12.234
>>> print(format(12.23434,'6.9f'))
12.234340000
>>> print(format(12.23434,'6.0f'))
    12
>>> print(format(12.23434,'9.2f'))
    12.23
>>> print(format(12.23434,'3.3f'))
12.234
>>> print(format(0.3456,'.2%'))
34.56%
>>> print(format(0.3456,'3.1%'))
34.6%
>>> print(format(0.3456,'6.1%'))
 34.6%








### 正确配置和使用 `@pytest.mark.parametrize` 装饰器 在 Pytest 中,`@pytest.mark.parametrize` 是一种强大的工具,用于实现参数化的单元测试。如果在使用此装饰器时遇到 IDE 报红问题,通常是因为未正确安装或配置 pytest 插件,或者 IDE 对动态加载的插件支持不足。 以下是关于如何正确配置和使用 `@pytest.mark.parametrize` 的说明: #### 1. 确保 pytest 已正确安装 为了使 `@pytest.mark.parametrize` 生效,必须先确认 pytest 是否已成功安装并可用。可以通过以下命令验证: ```bash pip show pytest ``` 如果没有安装,则需通过 pip 进行安装[^1]: ```bash pip install pytest ``` #### 2. 配置 IDE 支持 pytest 某些集成开发环境 (IDE),例如 PyCharm 或 VSCode,在默认情况下可能不会自动识别 pytest 的标记语法。因此需要手动启用 pytest 支持。 对于 **PyCharm** 用户,可以在设置中完成如下操作: - 打开菜单栏中的 `File -> Settings -> Tools -> Python Integrated Tools`。 - 将 `Default test runner` 设置为 `pytest`。 对于 **VSCode** 用户,可以安装扩展 `Python Test Explorer for Visual Studio Code` 并确保其配置文件 `.vscode/settings.json` 含以下内容: ```json { "python.testing.pyTestEnabled": true, "python.testing.unittestEnabled": false } ``` #### 3. 使用 `@pytest.mark.parametrize` 实现参数化测试 下面展示了一个标准的参数化测试案例,其中展示了如何定义多个输入及其对应的预期输出: ```python import pytest @pytest.mark.parametrize( "input_value, expected_output", [ (1, 1), (0, 0), (-1, -1) ] ) def test_identity(input_value, expected_output): assert input_value == expected_output ``` 上述代码片段中,`parametrize` 接受两个主要参数:第一个是逗号分隔的字符串形式变量名;第二个是一组元组组成的列表,表示每轮测试所使用的实际值。 #### 4. 解决 IDE 报红问题的具体方法 尽管已经按照以上步骤进行了配置,但如果仍存在报红现象,可能是由于 IDE 缺乏对 pytest 动态入的支持所致。此时可尝试以下解决方案之一: - 添加类型提示以帮助静态分析工具理解代码逻辑: ```python from typing import Any import pytest @pytest.mark.parametrize( # type: ignore[attr-defined] ... ) def test_example(...): pass ``` 此处利用了 `type: ignore[attr-defined]` 来忽略特定属性解析错误警告。 另一种方式是在项目根目录下创建一个名为 `pyproject.toml` 文件,并加入如下内容以便更精确控制 pytest 行为: ```toml [tool.pytest.ini_options] addopts = "--doctest-modules" ``` 最后,重启 IDE 可能也是必要的一步,因为一些更改只有在重新启动之后才会生效。 --- ### 总结 通过确保 pytest 的正确安装、合理调整 IDE 设置以及遵循最佳实践编写参数化测试用例,能够有效减少甚至完全消除因误配而致的功能失效或视觉干扰等问题。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值