Python基础(第一章)


" 携着洁净的羽毛、一起飞往天空 "

Python基础(内容基于逻辑教育Cheney课程)

  • 1、几个概念
    • 1.1、表达式
    • 1.2、语句
    • 1.3、程序
    • 1.4、函数
  • 2、标识符
    • 2.1、标识符
    • 2.2、标识符的命名方式
  • 3、基本数据类型
    • 3.1、基本数据类型
    • 3.2、查看数据类型的方法
  • 4、变量
  • 5、字符串
    • 5.1、字符串
    • 5.2、转义字符
    • 5.3、长字符串
    • 5.4、格式化字符串
  • 6、其它内容
    • 6.1、判断 id 地址相等和值相等
    • 6.2、打印内存地址
  • 7、字符串的其他操作
  • 8、示例

这篇文章还将带我们了解到:

  1. 单行注释及多行注释的方法
  2. 程序调试 (debug)的方法
  3. 驼峰命名法和下划线命名法
  4. 判断id地址相等与值相等的方法

1、几个概念

1.1、表达式

表达式:表达式(Expression)是运算符(operator)和操作数(operand)所构成的序列

  • 1 + 2
  • a = b
  • 9 * 3 - 7

表达式特点

  • 表达式一般仅仅用于计算一些结果、不会对程序产生实质性的影响
  • 如果在交互模式中输入一个表达式、解释器会自动将表达式的结果输出
  • 表达式运算具有优先级(此处不加以叙述)

1.2、语句

语句( if 语句、for 语句)

  • 一个语法上自成体系的单位、它由一个词或句法上有关联的一组词构成
  • 语句的执行一般会对程序产生一定的影响、在交互模式中不一定会输出语句的执行结果

1.3、程序

程序:程序就是由一条一条的语句和一条一条的表达式构成的

# 程序调试的方法(此处不详细声明)
# 加入断点
# 开始运行调试

1.4、函数

函数:函数就是一种语句、函数专门用来完成特定的功能

函数的分类

  • 内置函数(内建函数):由语法规定存在的函数、这些函数、包含在编译器的运行库中、能相应完成一定的功能、程序员不用单独书写代码实现它、只需要调用即可、极大效率上增强了程序员的工作能力
  • 自定义函数:由程序员自主创建的函数、当我们需要完成某个功能时、就可以去调用内置函数、或者自定义函数

函数的二个要素(此处不加以叙述)

  • 参数
  • 返回值

2、标识符

2.1、标识符

标识符:简单地理解,标识符就是一个名字,就好像我们每个人都有属于自己的名字,它的主要作用就是作为变量、函数、类、模块以及其他对象的名称

  • 变量:a
  • 函数:getMax
  • 类与模块以及其他对象(此处不加以叙述)

标识符的命名规则

  • 标识符由字母、数字和下划线组成、但第一个字符不能是数字
  • 标识符不能和 Python 中的保留字相同
  • Python中的标识符中,不能包含空格、@、% 以及 $ 等特殊字符

关键字和保留字

  • 查看方式(查看的并不是很全)
  1. win+R、输入cmd、进入交互环境
  2. 连续输入 python 、import keyword 、keyword.kwlist
  • 命名规则
  1. 基本是全英文
  2. 在格式上可以被当作标识符使用、但这是被禁止的

2.2、标识符的命名方式

驼峰命名法

  • 小驼峰命名法:第一个单词以小写字母开始、第二个单词的首字母大写、例如:myName、aDog
  • 大驼峰命名法:每一个单词的首字母都采用大写字母、例如:FirstName、LastName

下划线命名法

  • 程序员中还有一种命名法比较流行、就是采用下划线来连接所有的单词、例如:get_url、buffer_size

3、基本数据类型

3.1、基本数据类型

基本数据类型:数据类型指的就是变量值的类型、也就是可以为变量赋哪些值、不同的数据类型对应的值并不一样

  • 整型 int
  • 浮点型 float
  • 布尔型 bool
  • 空值 None
  • 字符串
  • 列表
  • 元组
  • 字典
  • 集合

整数和小数

  • 整数:所有整数(例如:a = 1、b = 2 都是 int 类型)
  • 小数常量:所有小数(例如:a = 1.2 、b = 2.3 都是 float 类型)

布尔值和空值

  • 布尔:只有二个值、一个是Ture、一个是False
  • None常量:只有一个数值就是None、也就是空值

3.2、查看数据类型的方法

a = 1
type(a)

#输出内容:

b = 1.2
type(b)

#输出内容:

c = True
type(c)
#输出内容:

d = None
type(d)
#输出内容:

4、变量

变量:变量是计算机内存中的一块区域、存储规定范围内的值、值可以改变、通俗的说就是给数据起个名字

变量命名规则

  • 变量名由字母、数字和下划线组成、要符合标识符的命名规范
  • 数字不能开头
  • 不能使用关键字和保留字
# 变量是可以有很多的数据类型的、不仅仅局限于整数(int)
# 这种取名字的方式也可以叫做引用
a = 1
b = 'abc'
c = True
d = [1,2,3]
e = {
     }

5、字符串

5.1、字符串

字符串:字符串是由字母、数字和下划线组成的一串字符

注意

  • 单引号与双引号不能混合使用
  • Python中用一对双引号或者一对单引号包裹的内容就是字符串
  • 引用不能嵌套
a = 'python''
b = 'what is your name'
c = 'what's your name'
d = ''what's your name''
#很显然、系统不能分辨a和c字符串内的内容
#但是可以分辨d字符串内的内容

5.2、转义字符

  • \t 制表符
  • \n 换行符
  • \ 后面的字符表示字符原意
  • r " " 引号内的所有内容都是字符串的本意
# \t 就是一个tab的距离、四个空格、一个制表位
print('我爱\t你'#输出内容:我爱    你
# \n 换行符
print('我爱\n你')

#输出内容:我爱
#         你
# r " " 引号内的所有字符全部成为原字符、不具备其他字符的功能了
f = r'' c:\news''
print(f)

#输出内容:c:\news

5.3、长字符串

长字符串

  • 做注释的作用(另外以 # 开始是作单行注释)
  • 保留字符串的文本格式
# 作用一:注释的作用
"""
我不管、我就要撒娇
"""
# 作用二:保留格式
c = """
    关关雎鸠,
    在河之洲,
    窈窕淑女,
    君子好逑
    """
print(c)

#输出内容
#   关关雎鸠,
#   在河之洲,
#   窈窕淑女,
#   君子好逑   

5.4、格式化字符串

# 格式化字符串:将字符串不可改变的属性格式化、然后将它的内容改变
a = "abc" #不可变数据类型
#改变成abcdef
  1. 拼串
# 拼串
b = "def"
print(a + b)

#输出内容:abcdef
  1. 传参
# 参数的传递
print('b = ',b)
  1. f "
# f "
y = '猪猪'
x = '羊羊'
str1 = f'i love {y},{x}'
print(str1)

#输出内容:i love 猪猪,羊羊
  1. format
# format
str2 = 'i love {},{}'.format(y,x)
print(str2)

#输出内容:i love 猪猪,羊羊
  1. 占位符
  • %s 字符串占位符
  • %f 浮点数占位
  • %d 整数占位
# 占位符 %s
s = 'i love %s'%'you'
print(s)

#输出内容:i love you

6、其它内容

6.1、判断 id 地址相等和值相等

  • " is " 判断的是 id 地址是否相等
  • " == " 判断的是值是否相等
d = [1,2,3]
c = [1,2,3]
print(d == c)
print(d is c)
# 二个输出函数的返回值均是布尔值
# 前者为True、后者为Flase

6.2、打印内存地址

  • 任何一个整数在内存当中都是有固定的位置的
a = 1
b = 1
print(id(a),id(b))

#输出内容:1984785424 1984785424
#地址相等

c = [1,2,3]
d = [1,2,3]
print(id(c),id(d))
#输出内容:2712853120264 2712853120008
#地址不相等
  • 在 python console 里面划分的内存比pycharm分配的小
  • 存不下的只能存在硬盘里面去、以有借用了硬盘的地址(只是借用)、地址不是固定的
  • pycharm里面的内存比较大、整数都可以有特定的地址
# python console环境里
a = 12345678923456
b = 12345678923456
print(id(a),id(b))

#输出内容:271285312026424 271285312000835
#地址不相等

7、字符串的其他操作

  • len()字符串的长度
  • max()最大值
  • min()最小值
  • split()分割字符串
  • join()拼接字符串
  • find()查找字符串
  • replace()替换字符串
  • partition()把字符串分割为三部分

去空格

  • s.strip()左右二边去空格
  • s.lstrip()去左边空格
  • s.rstrip()去右边空格

字符串大小写

  • s.upper()全部大写
  • s.lower()全部小写
  • s.isupper()判断是不是大写
  • s.islower()判断是不是小写

8、示例

  • 实现二个变量值的交换
  1. a = 6、b = 8、我想让a和b的值交换、二种方法实现

方法一:

所有语言都可以通过这种方式进行交换变量、通过新添加中间变量的方式、交换数值

# a = 6、b = 8、我想让a和b的值交换、二种方法实现
def demo1(a,b):
    temp = a
    a = b
    b = temp
    print(a,b)

方法二:

通过简单的逻辑运算进行将两个值进行互换

# a = 6、b = 8、我想让a和b的值交换、二种方法实现
def demo3(a, b):
    a = a + b # a = 14
    b = a - b # b = 6
    a = a - b # a = 8
    print(a, b)
  • 完成字符串的逆序以及统计
  1. 设计一个程序、要求只能输入长度低于31的字符串、否则提示用户重新输入
  2. 打印出字符串的长度
  3. 使用切片逆序打印出字符串
print("请输入一个字符串:")
str1 = input("input:")
if len(str1)>=31:
	print("重新输入一个长度低于31的字符串")
	str1 = input("input:")
print(len(str1))
b=list(str1)
b.reverse()
print(''.join(b))
  • 要求从键盘输入用户名和密码、校验格式是否符合规则、如果不符合、打印出不符合的原因、并提示重新输入
  1. 用户名长度6~20、用户名必须以字母开头
  2. 密码长度至少6位、不能为纯数字、不能有空格
print("请输入用户名(必须以字母开头):")
str1 = input("input:")
if len(str1)<6||len(str1)>20:
	print("重新输入用户名(长度为6~20)")
	str1 = input("input:")
print("请输入密码:")
t = input("input:")
if t<100000:
	print("重新输入密码(长度为6及以上)")
	t = input("input:")
print(str1)
print(t)

你可能感兴趣的:(Python,python,字符串,编程语言)