python -【一】基础语法

一. 基础数据类型

常用的 6 种数据类型

类型 描述 说明
数字(Number int,float,complex(复数),bool 复数:4 + 3jj 表示复数
字符串(String 文本:单引号,双引号,三引号 'aaa', "aaa", """aaa"""
列表(List 有序的可变列表 可有序记录一堆数据
元组(Tuple 有序不可变列表 记录不可变的数据集合
集合(Set 无序,不重复集合 存放无需,且不允许重复
字典(Dictionary 无序 Key-value 结构 通过 k-v 的形式记录

二、注释

单行注释

python 复制代码
# 我是单行注释
print('hello world!)

多行注释

python 复制代码
"""
我是多行注释
out 函数主要是向控制台输出 hello world 字符串
"""
def out():
	print('hello world!')

三、变量

变量: 变量是在程序运行时,存储计算的值或者是表示值的抽象概念

变量本身是没有类型的,但是变量存储的数据是有类型的

py 复制代码
"""
 变量演示
"""

money = 50
print(f'钱包剩余:{money}元')

# 购买冰淇淋花费 10 元
money = money - 10
print(f'钱包剩余:{money}元')

# 花费 2 元购买彩票
money -= 2
print(f'钱包剩余:{money}元')
# 购买彩票中间 300 元
money += 300
print(f'钱包剩余:{money}元')

"""
钱包剩余:50元
钱包剩余:40元
钱包剩余:38元
钱包剩余:338元
"""

type函数

py 复制代码
"""
数据类型
"""

# python type() 函数的用法
str_ = "python1"
str_2 = 'python2'
int_ = 1
float_ = 1.1


def func1():
    print('im func1...')


print(f'[{str_}]的类型是:', type(str_))
print(f'[{str_2}]的类型是:', type(str_2))
print(f'[{int_}]的类型是:', type(int_))
print(f'[{float_}]的类型是:', type(float_))
print(f'[func1]的类型是:', type(func1))


"""
[python1]的类型是: <class 'str'>
[python2]的类型是: <class 'str'>
[1]的类型是: <class 'int'>
[1.1]的类型是: <class 'float'>
[func1]的类型是: <class 'function'>
"""

四、数据类型的转换

数据类型: intfloatstr 三种数据类型的转换

语法 解释
int(x) x 变量转换成 int 类型
float(x) x 变量转换成 float 类型
str(x) x 变量转换成 str 类型
python 复制代码
"""
数据类型的转换:
int(x)
float(x)
str(x)
"""

print('-----------------定义变量---------------------')
# 定义 int float str 变量
int_num = 1
print(f'{int_num} 的类型是:', type(int_num))
float_num = 20.23
print(f'{float_num} 的类型是:', type(float_num))
str_num = '100'
print(f'{str_num} 的类型是:', type(str_num))

print('-----------------转换类型---------------------')

# 将 int 转 str
int_num_str = str(int_num)
print(f'将int转str -> {int_num_str} 的类型是:', type(int_num_str))
# 将 int 转 float
float_int_num = float(int_num)
print(f'将int转float -> {float_int_num} 的类型是:', type(float_int_num))

# 将 float 转 str
float_num_str = str(float_num)
print(f'将float转str -> {float_num_str} 的类型是:', type(float_num_str))
# 将 float 转 int
int_float_num = int(float_num)
print(f'将float转int -> {int_float_num} 的类型是:', type(int_float_num))

# 将 str 转 int
int_str_num = int(str_num)
print(f'将str转int -> {int_str_num} 的类型是:', type(int_str_num))
# 将 str 转 float
float_str_num = int(str_num)
print(f'将str转float -> {float_str_num} 的类型是:', type(float_str_num))


"""
-----------------定义变量---------------------
1 的类型是: <class 'int'>
20.23 的类型是: <class 'float'>
100 的类型是: <class 'str'>
-----------------转换类型---------------------
将int转str -> 1 的类型是: <class 'str'>
将int转float -> 1.0 的类型是: <class 'float'>
将float转str -> 20.23 的类型是: <class 'str'>
将float转int -> 20 的类型是: <class 'int'>
将str转int -> 100 的类型是: <class 'int'>
将str转float -> 100 的类型是: <class 'int'>
"""

五、 标识符

  • 内容限制(只允许使用一下的内容)

    • 英文
    • 中文 (不推荐)
    • 数字(数字不可用于开头
    • 下划线
  • 大小写敏感

    py 复制代码
    Andy = 'Andy'
    andy = 'andy'
    # 以上两个变量是能够被区分的,所有大小写是敏感的
  • 不可使用关键字

    False True None and as assert break class
    continue def del elif else except finally for
    from global if import in is lambda nonlocal
    not or pass raise return try while whith
    yield
python 复制代码
"""
正确的标识符定义
"""

# 规则1:关键字定义方式
name = '张三'
_name = '张三'
name_ = '张三'
name_1 = '张三'

# 规则2: 大小写敏感
Name = '李四'
print(name)
print(Name)

# 规则3: 不可使用关键字,
def = '张三' # 错误

六、运算符

算数运算符

算数运算符 说明
+
-
*
/
// 取整除
% 取余
** 指数(次方)
python 复制代码
"""
运算符演示
"""

print(f'1 + 1 = {1 + 1}')
print(f'1 - 1 = {1 - 1}')
print(f'2 * 2 = {2 * 2}')
print(f'8 / 2 = {8 / 2}')    # 4.0
print(f'8 // 2 = {8 // 2}')  # 4
print(f'8 % 3 = {8 % 3}')
print(f'8 % 3 = {8 % 3}')
print(f'2 ** 3 = {2 ** 3}')  # 2^3=8

"""
1 + 1 = 2
1 - 1 = 0
2 * 2 = 4
8 / 2 = 4.0
8 // 2 = 4
8 % 3 = 2
8 % 3 = 2
2 ** 3 = 8
"""

复合赋值运算符

复合赋值运算符 说明
+= b += a 等效 b = b + a
-= b -= a 等效 b = b - a
*= b *= a 等效 b = b * a
/= b /= a 等效 b = b / a
//= b //= a 等效 b = b // a
%= b %= a 等效 b = b % a
**= b **= a 等效 b = b ** a
python 复制代码
a = 10

a += 2
print(f'a += 2, a = ', a)

a = 10 # 重新赋值 a 为 10
a -= 2
print(f'a -= 2, a = ', a)

a = 10 # 重新赋值 a 为 10
a *= 2
print(f'a *= 2, a = ', a)

a = 10 # 重新赋值 a 为 10
a /= 2
print(f'a /= 2, a = ', a)

a = 10 # 重新赋值 a 为 10
a //= 2
print(f'a //= 2, a = ', a)

a = 10 # 重新赋值 a 为 10
a %= 3
print(f'a %= 3, a = ', a)

a = 10 # 重新赋值 a 为 10
a **= 2
print(f'a **= 3, a = ', a)


"""
a += 2, a =  12
a -= 2, a =  8
a *= 2, a =  20
a /= 2, a =  5.0
a //= 2, a =  5
a %= 3, a =  1
a **= 3, a =  100
"""

七、字符串

7.1 字符串的三种第一方式

python 复制代码
# 字符串的三种定义方式
name_1 = '张三'  		# 单引号
name_2 = "张三" 		    # 双引号
name_3 = """张三"""	    # 三引号

print(name_1, name_2, name_3)

# 字符串本身包含特殊符号比如: '  "  \ 等
str_1 = '"我爱python"'
print(str_1)
str_2 = "'我爱python'"
print(str_2)
str_3 = "我爱\"python"
print(str_3)

"""
张三 张三 张三
"我爱python"
'我爱python'
我爱"python
"""

7.2 字符串拼接

python 复制代码
 # 字符串拼接
title = '学习 python'
str_ = title + ", 能够完成编写python代码"
print(str_)  # 学习 python, 能够完成编写python代码


# 字符串不能直接和数字进行拼接
phone = 456
str_ += phone
print(str_)  # TypeError: can only concatenate str (not "int") to str

7.3 字符串格式化

python 复制代码
# 这种方式很难受,要写很多 + 号,可以通过格式化方式完成
print('我的名字是:' + name + ",我的职业的是:" + occupation + ",我住在:" + address + ", 我的年龄是:" + age)

# 方式1:格式化,在字符串前面加上 f
print(f'我的名字是:{name},我的职业的是:{occupation},我住在:{address}, 我的年龄是:{age}')

# 方式2:通过 format 函数
print('我的名字是:{0},我的职业的是:{1},我住在:{2}, 我的年龄是:{3}'.format(name, occupation, address, age))

# 方式3:通过 %s 占位符,使用 % 连接,多个占位符替换使用 %() 涵盖,并支持数字类型的占位
print('我的名字是:%s,我的职业的是:%s,我住在:%s, 我的年龄是:%s' % (name, occupation, address, age))
# 占位符 %s(字符) %d(数字)  %f(浮点数) -> %.2f 表示小数点后保留2位
print('我今年%d岁,工作%.2f年,住址:%s' % (25, 4.566, '北京'))


"""
我的名字是:刘海柱,我的职业的是:法师,我住在:新疆乌鲁木齐, 我的年龄是:30
我的名字是:刘海柱,我的职业的是:法师,我住在:新疆乌鲁木齐, 我的年龄是:30
我的名字是:刘海柱,我的职业的是:法师,我住在:新疆乌鲁木齐, 我的年龄是:30
我的名字是:刘海柱,我的职业的是:法师,我住在:新疆乌鲁木齐, 我的年龄是:30
我今年25岁,工作4.57年,住址:北京 
"""

7.4 练习题

python 复制代码
name = '阿里巴巴'             # 公司名字
stock_price = 19.99         # 公司股价
stock_code = '0233333'      # 公司股票代码
daily_growth_factor = 1.2   # 股票增长指数
growth_days = 7             # 增长天数

# 计算经过增长天数后,股票价格达到多少
# 使用字符串格式化后输出,如果是浮点数,要求小数点精确到2位
# 实例:
"""
公司: 阿里巴巴,股票代码:0233333,当前股价:19.99  -> 本行要求使用:f{变量} 
每日增长系数是:1.2,经过 7 天后,股票价格达到:xxx  -> 本行要求使用:% 占位符
"""

growth_price = stock_price * daily_growth_factor ** growth_days
line_1 = f'公司: {name},股票代码:{stock_code},当前股价:{stock_price}'
line_2 = '每日增长系数是:%.1f,经过 %d 天后,股票价格达到:%.2f' % (daily_growth_factor, growth_days, growth_price)

print(line_1)
print(line_2)

7.5 OS 键盘输入

python 复制代码
"""
读取 os 键盘输入
"""

name = input("你是谁:")
print(f"你好:{name}")

"""
你是谁: zhangsan
你好:zhangsan
"""
相关推荐
EterNity_TiMe_4 分钟前
【论文复现】(CLIP)文本也能和图像配对
python·学习·算法·性能优化·数据分析·clip
陌小呆^O^9 分钟前
Cmakelist.txt之win-c-udp-client
c语言·开发语言·udp
Suyuoa15 分钟前
附录2-pytorch yolov5目标检测
python·深度学习·yolo
I_Am_Me_25 分钟前
【JavaEE进阶】 JavaScript
开发语言·javascript·ecmascript
重生之我是数学王子35 分钟前
QT基础 编码问题 定时器 事件 绘图事件 keyPressEvent QT5.12.3环境 C++实现
开发语言·c++·qt
Ai 编码助手37 分钟前
使用php和Xunsearch提升音乐网站的歌曲搜索效果
开发语言·php
学习前端的小z41 分钟前
【前端】深入理解 JavaScript 逻辑运算符的优先级与短路求值机制
开发语言·前端·javascript
神仙别闹1 小时前
基于C#和Sql Server 2008实现的(WinForm)订单生成系统
开发语言·c#
XINGTECODE1 小时前
海盗王集成网关和商城服务端功能golang版
开发语言·后端·golang
zwjapple1 小时前
typescript里面正则的使用
开发语言·javascript·正则表达式