当前位置: 首页 > news >正文

Pyhton_25_5_26

Python中的变量的类型不需要再定义变量的时候显式声明,而是依靠初始化语句根据初始化的值的类型来进行确认的。

print(1/2)   #结果是0.5,与C、C++不同,整数相除可以是小数

Python中的幂运算符

a = 2**3  # 2的3次方,结果是8。5**2等于25。 

类型

type函数

a = 10
print(type(a)) #type函数可获取到变量类型 

整数、浮点数类型

Python中int能够表示的数据范围是“无穷”的,int的大小可以根据需要自动扩容,因此Python中没有short、long这种类型

float就是双精度浮点,大小为8字节,没有double

字符串(str)

字符串(str)要用引号括起来(单双引号都可以),好处:

#例子1:使用双引号避免转义单引号
s = "It's a beautiful day."
#这样就不用写成 'It\'s a beautiful day.'#例子2:使用单引号包含双引号(或反过来)
s1 = 'He said "Hello!"'
s2 = "It's a nice day."#如果字符串中单双引号都有使用,用三引号
#三引号支持:使用三个单引号或双引号定义多行字符串时,同样可以灵活处理内部引号:
multi_line = """This string contains 'single' and "double" quotes."""

len函数

内置函数len可求得字符串长度
print(len(s1))

字符串的拼接,注意不能字符串与数字相加,注意只能加,不能减

print(s1 + s2) #得到一个更大的字符串,对原来的字符串没影响

bool类型:只有True、False两个值,大小为一字节

动态类型的核心特点

  1. 无需显式声明类型
    变量在定义时无需指定类型,类型由赋给它的值自动推断:

    x = 10       # x 是整数(int)
    x = "hello"  # x 变为字符串(str)
  2. 类型与值绑定,而非变量
    变量本身没有固定类型,其类型取决于当前指向的值:

    a = 3.14    # a 是 float
    a = [1, 2]  # a 变为 list
  3. 运行时类型检查
    类型错误(如对字符串进行数学运算)会在代码运行时才被检测到:

    x = "10"
    y = x + 5  # 运行时报错:TypeError(字符串和整数不能相加)

单行注释(#)、文档注释(''' 文档 ''' """ 文档 """);批量注释:选中多行后ctrl+/  (再按一次取消注释)

f-strings(格式化字符串字面量):直接在字符串前加 f,变量用 {} 包裹。

基本用法
name = "David"
age = 30
# 直接嵌入变量
s1 = f"{name} is {age} years old."  # David is 30 years old.
# 支持表达式和函数调用
s2 = f"Next year, {name} will be {age + 1}."  # Next year, David will be 31.
s3 = f"Uppercase: {name.upper()}"  # Uppercase: DAVID

python 使用 input 函数, 从控制台读取用户的输入.

num = input('请输入一个整数: ')
print(f'你输入的整数是 {num}')

注意:
input 的返回值就是用户输入的内容,其实是字符串类型,如果要用取到的内容进行算术计算,先把读到的 str 转化为(int a = int(a))

a = input('请输入第一个整数: ')
b = input('请输入第二个整数: ')
print(f'a + b = {a + b}')

a = input('请输入第一个整数: ')
b = input('请输入第二个整数: ')
a = int(a) #类型转化
b = int(b)
print(f'a + b = {a + b}')

如何str转换int?         int()

如何int转换str?         str()

如何str转换float?      float()

运算符

算术运算符( + - * / % ** //

顺序:先算乘方 再算乘除 再算加减 不能除0

1、运行时出现的异常,也叫抛出异常

2、整数 / 整数 如果除不尽,得到的就是小数,而不会截断的情况

3、% 是求余数

print(7 % 2) #结果为1.

4、 ** 表示乘方运算(也能支持开方)

print(4 ** 2)    #4的二次方,结果为16
print(4 ** 3)    #4的三次方,结果为64
print(4 ** 0.5)  #4的0.5次方,结果为2

5、 // 是取整除法,也叫地板除. 整数除以整数, 结果还是整数(舍弃小数部分, 并向下取整. )

print(7 // 2)     #结果为3print(-7 // 2)    #结果为-4

关系运算符(<  <=  >  >=  ==  !=) 

(1) 关系运算符表达式的类型为bool. 如果关系符合, 则表达式返回 True. 如果关系不符合, 则表达式返回 False

(2) 关系运算符不光针对整数/浮点数进行比较, 还能针对字符串进行比较

a = 'hello'
b = 'world'
print(a < b)  #True
print(a <= b) #True
print(a > b)  #False
print(a >= b) #False
print(a == b) #False
print(a != b) #True

字符串比较大小, 规则是 "字典序",一个单词在词典上越靠前, 就越小. 越靠后, 就越大;

== 或者 != 是对字符串内容判定相等与否

(3) 对于浮点数来说, 不要使用 == 判定相等.因为浮点数在计算机中的表示并不是精确的, 在计算过程中容易出现非常小的误差, 但是 == 是锱铢必较的, 仍然会导致 == 的结果为 False.

错误的比较方式: 严格比较相等

print(0.1 + 0.2 == 0.3) #结果为False

正确的比较方式: 不再严格比较相等了, 而是判定差值小于允许的误差范围.

a = 0.1 + 0.2
b = 0.3
print(-0.000001 < (a - b) < 0.000001)  #结果为True

注意:print(-0.000001 < (a - b) < 0.000001) Python中支持这种连续小于的写法

验证有微小误差:

print(0.1)
print(0.2)
print(0.3)
print(0.1 + 0.2)

 

逻辑运算符(and or not)
and   并且.          一假则假
or      或者.          一真则真
not    逻辑取反.   真变假假变真

a = 10
b = 20
c = 30
print(a < b and b < c)
print(a > b or b > c)
print(not a < b)

注意:a < b and b < c 这个操作等价于 a < b < c

关于短路求值
对于 and, 如果左侧表达式为 False, 则整体一定为 False, 右侧表达式不再执行.
对于 or, 如果左侧表达式为 True, 则整体一定为 True, 右侧表达式不再执行.

赋值运算符(=)

链式赋值

a = b = 10 #不建议使用

多元赋值

a, b = 10, 20

交换两个变量

基础写法

a = 10
b = 20tmp = a
a = b
b = tmp

基于多元赋值写法

a = 10
b = 20a, b = b, a

复合赋值运算符(+=  -=  *=  /=  %=  **=  //=)

Python 中则不支持 ++ -- 这样的自增/自减运算符. 

注意:++a之所以不会报错是因为Python解释器把+当成了正号. 同理--a,负负得正最终值相当于a没变. 但后置的a++、a--都会报错.

http://www.xdnf.cn/news/660637.html

相关文章:

  • 中断和异常
  • 2025-05-26 什么是“AI 全栈”
  • K8s中间件Kafka上云部署
  • Treasures in Discarded Weights for LLM Quantization阅读
  • 华为OD机试_2025 B卷_欢乐的周末(Python,100分)(附详细解题思路)
  • Anaconda 在 Windows 上的安装教程
  • SpringBoot3集成Oauth2.1——7数据库存储用户信息
  • 基于DDD的企业团餐订餐平台微服务架构设计与实现(二)
  • GitLab 18.0 正式发布,15.0 将不再受技术支持,须升级【二】
  • sd webui 安装sd-webui-TemporalKit 加载报错解决办法
  • Java-ArrayList集合的遍历方式详解
  • uni-app学习笔记十五-vue3中defineExpose的使用
  • 如何用Python搭建一个网站
  • Qwen-Agent的使用示例-天气查询
  • Spring + MyBatis/MyBatis-Plus 分页方案(limit分页和游标分页)详解
  • 【排错】kylinLinx环境python读json文件报错UTF-8 BOM
  • WEB安全--RCE--webshell HIDS bypass3
  • try-with-resources
  • md650场景联动
  • 华为OD机试真题——考勤信息(2025A卷:100分)Java/python/JavaScript/C/C++/GO最佳实现
  • Go语言入门指南
  • lwip_bind、lwip_listen 是阻塞函数吗
  • 从实训到实战:家庭教育干预课程的产教融合定制方案
  • 1期临床试验中的联合i3+3设计
  • IndexTTS - B 站推出的文本转语音模型,支持拼音纠正汉字发音(附整合包)
  • 基于web的二手交易商城-设计
  • uniapp好不好
  • 攻防世界 unseping
  • 从0到1搭建AI绘画模型:Stable Diffusion微调全流程避坑指南
  • 企业网站架构部署与优化-Nginx性能调优与深度监控