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
"""
相关推荐
亿牛云爬虫专家14 分钟前
优化数据的抓取规则:减少无效请求
python·数据采集·多线程·爬虫代理·数据抓取·代理ip·房价
程序媛堆堆16 分钟前
解决NotOpenSSLWarning: urllib3 v2 only supports OpenSSL 1.1.1+问题
python
DreamByte18 分钟前
Python Tkinter小程序
开发语言·python·小程序
Python极客之家20 分钟前
基于深度学习的眼部疾病检测识别系统
人工智能·python·深度学习·毕业设计·卷积神经网络
Bigcrab__26 分钟前
Python3网络爬虫开发实战(15)Scrapy 框架的使用(第一版)
爬虫·python·scrapy
覆水难收呀27 分钟前
三、(JS)JS中常见的表单事件
开发语言·前端·javascript
阿华的代码王国31 分钟前
【JavaEE】多线程编程引入——认识Thread类
java·开发语言·数据结构·mysql·java-ee
繁依Fanyi37 分钟前
828 华为云征文|华为 Flexus 云服务器部署 RustDesk Server,打造自己的远程桌面服务器
运维·服务器·开发语言·人工智能·pytorch·华为·华为云
weixin_486681141 小时前
C++系列-STL容器中统计算法count, count_if
开发语言·c++·算法
基德爆肝c语言1 小时前
C++入门
开发语言·c++