目录
数据输入
前言
数据输出
字符串
字符串的三种定义方法
引号嵌套
字符串的拼接
字符串格式化
+拼接字符串缺点
python常用的格式符号
格式化的精度控制
字符串快速格式化
快速格式化特点
对表达式进行格式化
具体案例
字符串的大小比较
字符串比较方式
变量的类型注解
主要功能
支持位置
为变量设置类型注解
普通设置方式
在注释中使用类型注解
函数的类型注解
形参的类型注解
返回值的类型注解
Union类型注解
数据输入
前言
- 我们可以使用input()语句从键盘中获取输入
- 我们可以使用一个变量接受input语句获取的键盘输入数据即可
语法:接受变量=input("提示语句")
name=input("请告诉我你是谁:")
print("我的名字是:%s" % name)
注意:input语句中不管你写入的是什么数据,他都会把数据当作字符串处理。
数据输出
作用:输出变量内容到控制台
换行输出:print(数据1,数据2,数据3)
不换行输出:print(数据1,数据2,数据3,end="")
name="cjc"
age="24"
print("名字为",name,"年龄为",age)
print("---")
print("名字为",name,"年龄为",age,end="")
print("---")
注意:这种输出语句常和格式化字符串进行混用。
字符串
字符串:又称为文本,是由任意数量的字符,如中文、英文、各类符号、数字等组成。所以叫做字符串
字符串的三种定义方法
- 单引号定义法:name='cjc'
- 双引号定义法:name="cjc"
- 三引号定义法:name="""cjc"""
注意:三引号定义法,和多行注释的写法一样,同样支持换行操作,使用变量接受他,他就是字符串;不使用变量接受他,他就作为多行注释使用。
name1='cjc'
print(type(name1))
name2="cjc"
print(type(name2))
name3="""
cjc"""
print(type(name3))
结果:执行结果都是字符串类型
引号嵌套
- 单引号定义法,可以内含双引号
- 双引号定义法,可以内含单引号
- 可以使用转义字符(\)来将引号解除效用,变成普通字符串
字符串的拼接
前言:若我们与两个字符串文本字面量,那么可以将其拼接成一个字符串,通过+即可完成
print("我是个"+"大帅哥")#我是个大帅哥
不过,单纯的两个字符串字面量拼接显得很呆,一般字面量和变量或变量和变量之间会使用拼接
name="cjc"
print("my name is "+name+" we could learn python each other")
注意:
- 字符串是没有办法通过+和整数及其他类型进行拼接的
- +拼接相对于逗号相连的多参数,逗号相连的每个参数拼接完都会有空格
字符串格式化
+拼接字符串缺点
- 变量过多,拼接起来实在太麻烦了
- 字符串无法和其他类型完成拼接
理解:先占个位置(占位符通常用%表示),等一会有个变量过来,我把它变成字符串放到展位的位置
class_num=57
avg_salary=16781
message="python是大数据学科,北京第%d期,毕业平均工资:%s" % (class_num,avg_salary)
print(message)
注意:
- 可以有多个变量,用括号括起来,不同变量之间用逗号隔开,后面的参数和前面的占位符一一对应
- %s表示将将后面的变量以字符串模式顶替前面的占位符
- 数字也可以用%s占位,这里是将数字转换成字符串
python常用的格式符号
格式化的精度控制
前言:如下图19.99变成了19.990000
我们可以使用辅助符号“m.n”来控制数据的宽度和精度
- m:控制宽度,要求数字(很少使用),设置宽度小于数字自身,那么这个设置不生效
- .n:控制小数点精度,要求是数字,会进行小数的四舍五入
示例
- %5d:表示将整数的宽度控制在5位,如数字11,被设置为5d,就会变成:[空格][空格][空格]11,用这三个空格补足宽度
- %5.2f:表示将宽度控制为5,将小数点精度设置为2
- %.2f:表示不限制宽度,只限制小数点精度为2
字符串快速格式化
语法:f"{变量1}{变量2}"
注意:f其实就是format的含义
name="传智播客"
set_up_year=2006
stock_price=19.9
print(f"我是{name},我成立于:{set_up_year}年,我今天的股价是:{stock_price}")
快速格式化特点
- 不会理会类型
- 不做精度控制(适合对精度没有要求的时候快速使用)
对表达式进行格式化
表达式:一条具有明确执行结果的代码语句
具体案例
字符串的大小比较
前言:在程序中,字符串所用的字符都有其对应的ASCII值,每一个字符都能对应上一个数字的码值,字符串的比较就是基于数字码值大小的比较
字符串比较方式
理解:字符串是按位比较,也就是一位一位的进行对比,只要有一位大,那么整体就大
变量的类型注解
含义:在代码中涉及数据交互的地方,提供数据类型的注解(显示的说明)
主要功能
- 帮助第三方IDE工具(如pycharm)对代码进行类型推断,协助做代码提示
- 帮助开发者自身对变量进行类型注释
支持位置
- 变量的类型注解
- 函数方法形参列表和返回值类型的注解
为变量设置类型注解
普通设置方式
语法1:变量:类型
在注释中使用类型注解
语法2:#type: 类型
注意:类型注解仅仅是提示性的,不是决定性的,不会影响到程序的运行
函数的类型注解
形参的类型注解
def 函数/方法名(形参名:类型,形参名:类型):
函数体
返回值的类型注解
def 函数/方法名(形参名:类型,形参名:类型) -> 返回值类型:
函数体
def add(x:int,y:int):
return x+y
def func(data:list) ->list:
return data
Union类型注解
注意:使用union类型可以定义联合注解,使用时需要导入模块Union
语法:Union[类型,……,类型]
from typing import Union
my_list:list[Union[int,str]]=[1,2,"hello"]
my_dict:dict[str:Union[str,int]]={"name":"lili","age":18}
def func(data:Union[int,str])->Union[int,str]:
pass