python字符串输入输出与注解

目录

数据输入

前言

数据输出

字符串

字符串的三种定义方法

引号嵌套

字符串的拼接

字符串格式化

+拼接字符串缺点

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值