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

Python之--基本知识

基本输出


    语法结构: print(输出内容)
    print()函数完整的语法格出: print (value,...,sep='',end='\n',file=None)
    只有字符串可以用+连接

基本输入


    语法结构: x=input('提示文字’)
    注意事项: 无论输入的数据是什么 x 的数据类型都是字符串类型

示例:

name = input("Enter your name: ")#单行注释示例
print('我的姓名是:'+name)
fp=open('text.txt','w')#打开文件
print('人生苦短,我用Python',file=fp)#输出内容到文件
fp.close()#关闭文件
a=100
b=50
print(90)
print(a)
print(a*b)
print(a,b,'a+b')
print(chr(65))
print('hello','world',sep='啊',end='//')
print('amazing')
age=input("Enter your age:")
print('我的年龄是:'+age)
print(a,b,sep='',end='')
print('c')

  

注:输出内容到文件中,如果是中文字符,可能会显示乱码,只要更改这个.txt文件的编码格式为 GBK 就可以了(在 Windows 系统中,CMD 默认使用 GBK 编码,若 Python 脚本以 UTF-8 输出中文,CMD 会显示乱码)

print('北京欢迎您!!')
print("北京欢迎您!!")
print("'北京欢迎您!!'")
print('''北京欢迎您''')

在Python中,单双引号是等价的。 

 可以将单双引号交替使用来避免转义

保留字(关键字)

Python 语言中被赋予特定意义的单词,它们在语言内部有固定用途,不能将保留字作为变量名或函数名。Python 版本更新可能会添加或删除保留字,可以通过代码来查看当前版本的保留字列表

import keyword
print(keyword.kwlist)  # 输出当前 Python 版本的所有保留字

截至 Python 3.10,共有 35 个保留字:

False      await      else       import     pass
None       break      except     in         raise
True       class      finally    is         return
and        continue   for        lambda     try
as         def        from       nonlocal   while
assert     del        global     not        with
async      elif       if         or         yield

!!严格区分大小写

标识符

标识符是程序员在程序中为变量、函数、类、模块等自定义的名称。

命名规则:

(1)只能由字母、数字和下划线(_)组成。例如 my_variable、count1 是合法的,而 my-var 是不合法的,因为包含了 -。
(2)不能以数字开头。像 1num 就不是合法的标识符,num1 则是合法的。
(3)不能是 Python 的保留字。比如不能将变量命名为 if、for 等。
(4)区分大小写。MyVar 和 myvar 是两个不同的标识符。


命名习惯:
(1)变量和函数:通常使用小写字母和下划线组合的方式,如 student_name、calculate_sum。
(2)类:采用驼峰命名法,即每个单词的首字母大写,如 StudentInfo、PersonClass。
(3)常量:一般用全大写字母和下划线组合,如 MAX_VALUE、PI。
 

基本数据类型

int(整型)

不限长度,支持任意大小的整数。

x = 100
y = -5
z = 1_000_000  # 下划线分隔大数字

float(双精度浮点型)

表示小数,支持科学计数法。

x = 3.14
y = 1.23e6  # 等同于 1.23 * 10^6

 **和C/C++不同的是,C/C++的 float 为单精度浮点值,double 为双精度浮点值。在 Python 中不会专门区别单双精度,全部按照双精度来处理。

内置函数 round():用于对数字进行四舍五入操作。

语法

round(number, ndigits)

number:必填参数,表示要进行四舍五入的数字,可以是整数、浮点数等数值类型。

ndigits:可选参数,表示要保留的小数位数。如果不提供该参数,round() 函数会将数字四舍五入到最接近的整数。

1. 不指定保留小数位数,四舍五入到整数

num1 = 3.14159
result1 = round(num1)
print(result1)num2 = 2.99
result2 = round(num2)
print(result2) 

 round(3.14159) 会将 3.14159 四舍五入到最接近的整数,结果为 3;round(2.99) 四舍五入后结果为 3。

2. 指定保留小数位数

num3 = 3.14159
result3 = round(num3, 2)
print(result3)num4 = 5.6789
result4 = round(num4, 1)
print(result4) 

round(3.14159, 2) 表示将 3.14159 四舍五入到保留两位小数,结果是 3.14;round(5.6789, 1) 会把 5.6789 四舍五入到保留一位小数,结果为 5.7。 

 3. 特殊情况

当舍去部分的最高位恰好为 5,且 5 后面没有其他数字或全为 0 时,如果保留部分的末位数字是偶数,则直接舍去 5(不进位)。如果保留部分的末位数字是奇数,则进位(末位加 1)。

print(round(2.5))  # 结果:2(保留部分末位是2,偶数,舍去5)
print(round(3.5))  # 结果:4(保留部分末位是3,奇数,进位)print(round(2.35, 1))  # 结果:2.4(保留部分末位是3,奇数,进位)
print(round(2.45, 1))  # 结果:2.4(保留部分末位是4,偶数,舍去5)

complex(复数型)

实部和虚部组成,虚部用 j 表示。

x = 3 + 4j
print(x.real)  # 输出: 3.0
print(x.imag)  # 输出: 4.0

bool(布尔型)

只有两个值 True 和 False,用于逻辑判断。

True = 1,False = 0

布尔值为 False 的情况:

(1)False 或者 None

(2)数值中的 0,包含 0,0.0,虚数 0

(3)空序列,包含空字符串、空元组、空列表、空字典、空集合
 

o=True
print(o)
print(o+10)
q=False
print(q)
print(q+10)#非零的字符串布尔值为True
print(bool('北京欢迎你'))
print(bool(''))

str(字符串型)

表示文本,用单引号、双引号或三引号包裹。

x = "Hello"
y = 'World'
z = """多行字符串"""
inform='''
你好
世界
'''
print(inform)

**在 Python 中,没有独立的字符(Character)型,而是将单个字符视为长度为 1 的字符串(str 型)。

常见用法:

对字符串中某个子串或区间的检索称为切片

切片的语法结构:字符串或字符串变量 [N:M](从n开始到m结束但是不包含m

字符串索引从左到右的取值范围:0 到 n-1;

字符串索引从右到左的取值范围:-1到 n;

常用的字符串操作:     

(1)x+y 将字符串x与y连接起来     

(2)x*n或n*x 复制n次字符串x     

(3)x in s 如果x是s的子串,结果为True,否则结果为False

#字符串索引及切片操作
s='helloworld'
print(s[0],s[-10])
print('北京欢迎你'[3])
print('北京欢迎你'[-2])
print(s[2:7])#正向递增
print(s[-8:-3])#反向递减
print(s[:5])#默认从0开始
print(s[5:])#默认切片到结尾#常用的字符串操作
x='2005'
y='小明出生'
z='2'
print(x+y)
print(x*10)
print(x in y,z in x)

数据类型之间的转换

函数描述说明
int(x)将 x 转换为整数类型
float(x)将 x 转换为浮点数类型
str(x)将 x 转成字符串
chr(x)将整数 x 转换为一个字符
ord(x)将一个字符 x 转换为其对应的整数值
hex(x)将一个整数 x 转换为一个十六进制字符串
oct(x)将一个整数 x 转换为一个八进制字符串
bin(x)将一个整数 x 转换为一个二进制字符串

 **辨析 str(x) 和 chr(x) :

函数str(x)chr(x)
功能将任意对象转换为字符串表示形式将 整数 转换为对应字符
参数类型任意类型(整数、列表、自定义对象等)必须是整数(范围:0 ~ 1,114,111)
返回值对象的字符串形式(保留结构)长度为 1 的字符串(单个字符)
典型场景字符串拼接、文件写入、打印调试信息生成特殊字符(如表情符号、非 ASCII 字符)

(1)处理整数 

str(65)    # '65'(直接转为数字的文本形式)
chr(65)    # 'A'(Unicode 码点 65 对应字符 'A')

 (2)处理容器类型

str([1, 2])  # '[1, 2]'(保留列表格式的字符串)
chr([1, 2])  # 报错!chr() 只接受整数

 (3)生成特殊字符

chr(128512)  # 😀(笑脸表情)
chr(0x4E2D)  # 中(Unicode 码点 20013)

容器数据类型

list(列表)

可变、有序的元素集合,支持任意数据类型。

x = [1, "apple", True]
x.append(3.14)  # 添加元素

tuple(元组)

不可变、有序的元素集合。

x = (1, "apple", True)
# x[0] = 2  # 错误:元组不可修改

range(范围)

不可变的整数序列,通常用于循环。

x = range(5)  # 生成 0, 1, 2, 3, 4

dict(字典)

无序的键值对集合,键必须唯一且不可变。

d = {"name": "Alice", "age": 30}  # 键值对用冒号分隔
d = dict(name="Alice", age=30)    # 另一种创建方式
print(x["name"])  # 输出: Alice

set(集合)

无序、唯一元素的集合,支持数学集合运算。

s = {1, 2, 3}                     # 直接用花括号
s = set([1, 2, 3])                # 通过列表创建
s = set()                         # 创建空集合(不能用 {},否则是字典)
x.add(4)  # 添加元素

1、数据去重:

lst = [1, 2, 2, 3, 3, 3]
unique_items = set(lst)  # {1, 2, 3}

2、数学集合运算

s1 = {1, 2, 3}
s2 = {3, 4, 5}
print(s1 & s2)  # 交集:{3}
print(s1 | s2)  # 并集:{1, 2, 3, 4, 5}
print(s1 - s2)  # 差集:{1, 2}

转义字符

转义字符描述示例(打印结果)
\\反斜杠本身print('a\\b') → a\b
\'单引号print('I\'m') → I'm
\"双引号print("She said: \"Hi\"") → She said: "Hi"
\n换行符(新行)print('a\nb') →
a
b
\t制表符(Tab)print('Name\tAge') → Name Age
\r回车符(覆盖当前行)print('Hello\rWorld') → WorldHello 被覆盖)
\b退格符(Backspace)print('abc\bd') → abd(删除 c
print('老师说:\"好好学习,天天向上\"')
print('老师说:"好好学习,天天向上"')#加r/R可以使转义字符失效
print(r'老师说:\"好好学习,天天向上\"')
print(R'老师说:\"好好学习,天天向上\"')

算术运算符

运算符描述说明示例结果
+加法1+12
-减法1-10
*乘法2*36
/除法5/22.5
//整除5//22
%取余10%31
**幂运算2**416

和 C/C++ 的除法计算不同, C/C++ 的除法运算会直接舍去小数部分(相当于 Python 中的整除)

赋值运算符 

运算符描述说明示例展开形式
=简单的赋值运算x=yx=y
+=加赋值x+=yx=x+y
-=减赋值x-=yx=x-y
*=乘赋值x*=yx=x*y
/=除赋值x/=yx=x/y
%=取余赋值x%=yx=x%y
**=幂赋值x**=yx=x**y
//=整除赋值x//=yx=x//y

比较运算符

运算符描述说明示例结果
>大于98>90True
<小于98<90False
==等于98==90False
!=不等于98!=90True
>=大于或等于98>=98True
<=小于或等于98<=98True

逻辑运算符

运算符描述说明用法结合方向
and逻辑与表达式 1 and 表达式 2从左到右
or逻辑或表达式 1 or 表达式 2从左到右
not逻辑非not 表达式从右到左
表达式 1表达式 2表达式 1 and 表达式 2表达式 1 or 表达式 2not 表达式 1
TrueTrueTrueTrueFalse
TrueFalseFalseTrueFalse
FalseFalseFalseFalseTrue
FalseTrueFalseTrueTrue

优先级从高到低依次为非与或not > and > or 

位运算符

把数字看作二进制数来进行计算。

按位与(&)、按位或(|)、按位异或(^)//不同为 1 、按位取反(~)

左移位(<<)//左边高位舍弃,右边低位补0、右移位(>>)//右边地位舍弃,左边高位补0

【左乘右除:向左移位是乘法操作,向右移位是除法操作】

运算符的优先级

运算符描述说明
**幂运算
~、+、-取反、正号、负号
*、/、%、//算术运算符
+、-算术运算符
<<、>>位运算符中的左移位和右移位
&位运算符中的按位与
^位运算符中的异或
|位运算符中的按位或
<、<=、>、>=、!=、==比较运算符
=赋值运算符

今天的分享就到这里啦~~

谢谢你的观看!!

http://www.dtcms.com/a/267478.html

相关文章:

  • 马来西亚华韵海外华侨联合会宣布李子昂先生荣升名誉理事
  • HarmonyOS学习2---工程目录UIAbility
  • mysql 图形化界面工具 DataGrip 安装与配置
  • 基于人体骨架动作识别的神经信息处理技术(8 ANUBIS数据集)
  • UI前端与数字孪生结合实践案例分享:智慧水利的水情监测与预警系统
  • 信号与槽的总结
  • spring加载外部properties文件属性时,读取到userName变量值和properties文件的值不一致
  • 每日学习问题记录
  • 四、jenkins自动构建和设置邮箱
  • Matplotlib 安装部署与版本兼容问题解决方案(pyCharm)
  • nginx部署发布Vite项目
  • H3C WA6322 AP版本升级
  • 2 大模型高效参数微调;prompt tunning
  • (LeetCode 每日一题) 1394. 找出数组中的幸运数 (哈希表)
  • Vue前端项目接收webSocket信息
  • uniapp 国密sm2加密
  • 国产数据库之达梦DM:破甲成蝶
  • php协程
  • 【内存】Linux 内核优化实战 - net.ipv4.tcp_tw_reuse
  • Spring boot之身份验证和访问控制
  • FreeCAD傻瓜教程-拉簧拉力弹簧的画法及草图的附着位置设定和Part工作台中形体构建器的妙用
  • C#扩展方法全解析:给现有类型插上翅膀的魔法
  • spring中 方法上@Transation实现原理
  • Flink-Source算子状态恢复分析
  • 机器视觉对位中的常见模型与技术原理
  • HTML网页应用打包Android App 完整实践指南
  • 【Project】基于kafka的高可用分布式日志监控与告警系统
  • openstack安装并初始化
  • 智能自主运动体的革命:当AI学会奔跑与协作 ——从单机定位到群体智能的跨越
  • 2025年的前后端一体化CMS框架优选方案