一、python基础语法
变量、基本数据类型、类型之间的转换、运算符、选择结构、循环结构、数据容器、函数、类、异常处理
首先了解下注释:
# 单行注释
'''
多行注释
多行注释
'''
二、变量
变量命名规则:
1.必须是大小写字母,数字以及下划线_组成
2.不能以数字开头
3.不能是关键字(保留字):在某一门语言中有特殊含义或功能的“字符串”
有哪些关键字?
打印关键字
import keyword
print(keyword.kwlist)
4.命名原则:通俗易懂,见名思义,遵循写法
python中定义变量只需要取名字,不用注明类型,可自动推断
查看变量类型:
# 打印数据类型
i=1
n=1.1
print(type(i),type(n))
python同样可以指定类型,但是python本身是一门动态数据类型的语言,虽然制定了类型但不会真正对代码进行限制
三、基本数据类型
四大基本数据类型:整型int、浮点类型float、字符串str、布尔类型bool
# 数据类型
i=100
f=-1.2554
str1="asfff"
str2='safgfe'
# python中也可以用单引号括起来表示字符串,在其他语言中一般表示字符
bool1=True
bool2=False
print(i,f,str1,str2,bool1,bool2)
print(type(i),type(f),type(str1),type(str2),type(bool1),type(bool2))
print('''
a
b
c''') #成对的三个单引号(双引号)''' '''/""" """ 表示一次打印多行字符串 无需换行符\n
字符串的常见用法
str='python,java,scala,sql'
# 倒转字符串
print(str[::-1]) #切片
# 切片一般用于提取数据容器中的一部分元素
# 切片完整的形式需要三个参数: 起始位置:结束位置:步长
# 默认值:起始位置默认从头开始,结束位置默认最后的位置,步长默认为1
# 提取Java
print(str[7:11:1]) #左闭右开[开始,结束) 故结束位置+1
# 指定字符进行切分
print(str.split(','))
print(type(str.split(','))) #列表类型
print(str.upper())#字符串大写
print(str.index('java'))#查找字符串出现的位置
split:切分字符串
startswith:判断字符串是不是以某个字符开头,返回布尔值
endswith:判断字符串是不是以某个字符结尾,返回布尔值
upper、lower:转大小写
replace:替换字符串
strip:去除字符串左右两边的隐藏字符
count:统计某字符串出现的次数
index:查找字符串出现的位置
title :转换成标题写法,即首字母大写
转义字符用法
\ 转义字符,有特殊意义=>无特殊意义 无特殊意义=>有特殊意义
print("I'm \"fine\".")
print("I'm\\ \"fine\".")
print("I'm\ \"fine\".")
# \\ 与 \ 打印出来一样,字符\本身也要转义,所以\\表示的字符就是\
print("a\\t b\\n") #将有意义的\n \t 转义为无意义
print(r'a\t b\n') #引号前加r 表示后面就是完整的字符串,不需要再在字符串内部进行转义
运行结果:
![](https://i-blog.csdnimg.cn/blog_migrate/923166a2803d78fd03c1a3b154c41f74.png)
格式化字符串
1. %形式格式化
user='张三'
year=2023
month=3
day=21
hour=20
minutes=38
seconds=30
percent='80%'
print('''尊贵的%s用户,
截至到%d年%d月%d日%d时%d分%d秒,
您当前流量已使用%s''' % (user,year,month,day,hour,minutes,seconds,percent))
# %s 字符串占位符,可通用
user='张三'
year=2023
month=3
day=21
hour=20
minutes=38
seconds=35.612
percent=80.1554438
print('''尊贵的%s用户,
截至到%d年%02d月%d日%d时%d分%f秒,
您当前流量已使用%06.2f%%''' % (user,year,month,day,hour,minutes,seconds,percent))
# %s 字符串占位符,可通用
# %2d月表示月前面两位整型,%02d月表示月前面两位,不够用0补齐
# %% 在格式转换符之后表示一个%
# %f 为浮点型占位符,默认保留6位小数。
# %a.bf表示保留b位小数,全部位数为a位,a<b则等同于未设置a,a>b且a足够大时
#前面需用空格补齐位数(前面加0,用0补齐)
2. format方法实现字符串格式化(三个方法)
user='张三'
year=2023
month=3
day=21
hour=20
minutes=38
seconds=35.612
percent=80.1554438
print('''尊贵的{0}用户,
截至到{1}年{2}月{3}日{4}时{5}分{6}秒,
您当前流量已使用{7:5.2f}%'''.format(user,year,month,day,hour,minutes,seconds,percent))
# 用format方法实现字符串格式化 方法一
user='张三'
year=2023
month=3
day=21
hour=20
minutes=38
seconds=35.612
percent=80.1554438
print(f'''尊贵的{user}用户,
截至到{year}年{month}月{day}日{hour}时{minutes}分{seconds}秒,
您当前流量已使用{percent:5.2f}%''')
# 用format方法实现字符串格式化 方法二 '''后加f等同于format方法
user='张三'
year=2023
month=3
day=21
hour=20
minutes=38
seconds=35.612
percent=80.1554438
print('''尊贵的{u}用户,
截至到{y}年{m}月{d}日{h}时{min}分{s}秒,
您当前流量已使用{p:8.2f}%'''.format(y=year,m=month,d=day,min=minutes,p=percent,u=user,h=hour,s=seconds))
# 用format方法实现字符串格式化 方法三
#变量名匹配套用format方法,优点在于变量名顺序可以随意调整
![](https://i-blog.csdnimg.cn/blog_migrate/b8812f1410a0ed7d548d28f7fa7eab61.png)