首页 > 编程语言 >python自学

python自学

时间:2024-08-16 19:16:04浏览次数:8  
标签:name phone python number print 字符串 自学 type

基础语法

字面量

定义:在代码中,被写下来的值,称之为字面量

类型:python中常用的有6种数据类型

  • 数字
    • 整数(int)
    • 浮点数(float)
    • 复数(complex),如4+3j
    • 布尔(bool):True本质为1,False本质为0
  • 字符串(String)

字符串需要使用'xxx',"xxx"或者'''xxx'''格式,而三引号中的字符串可以跨行。

  • 列表(List)
  • 元组(Tuple)
  • 集合(Set)
  • 字典(Dictionary):一种键值对

注释

注释:不是程序,不能被执行,只是对程序代码进行解释说明。

  • 单行注释
# 输出字符串
print("hello world!")
  • 多行注释
'''这是一段注释
用于解释下面这行程序的作用
下面这行程序的作用是输出字符串'''
print("hello world!")

变量

变量在程序运行时,能储存计算结果或能表示值的抽象概念。

变量名 = 变量值
'''
演示变量的使用
'''

# 定义一个变量,记录钱包余额
money = 50
# 输出钱包余额
print("当前余额为:",money)

# 定义一杯柠檬水的价格
lemon = 4
money = money - lemon
print("当前余额为:",money)

数据类型

六种数据类型可在字面量中进行参考。

查看数据类型:使用type()函数进行查看

number = 333
#使用输出语句输出变量类型
print(type(number))

# 使用变量存储变量类型
number_type = type(number)
print(number_type)
# 本质上number_type是Str类型的
print(type(number_type))

python中变量无类型,数据对象有类型:python中的变量无法单独使用,必须进行赋值,当对一个变量进行赋值的时候即可对该变量进行。

如下:

#定义一个变量number,初始类型为int
number = 156
print(type(number))
#给变量重新赋值一个字符串类型的值
number = "Hello World!"
print(type(number))

不同于C语言,C语言定义一个变量为整数类型后就无法给其赋值为其他类型的数据。python可以进行这种操作,所以说python变量无类型。涉及到存储层面的原因以后再进行探讨。

数据类型转换

文件中读取的数据默认是字符串类型,需要转化为数字类型进行操作

input()语句,输入的结果默认是字符串

写出内容需要的内容是字符串类型,需要转化为字符串进行操作

常见的转换语句:

函数 说明
int(x) 转化为整数
float(x) 转化为浮点数
str(x) 将x转化为string
'''
该文件用于演示python的数据类型转换
'''
number = "365"
print(number)
print(type(number))

#字符串转换为整数类型
number = int(number)
print(number)
print(type(number))

#整数转换为浮点数类型
number = float(number)
print(number)
print(type(number))
365
<class 'str'>
365
<class 'int'>
365.0
<class 'float'>

实际上这种转化也存在限制,例如

name = "Peter"
name = int(name)

该字符串无法转化为数字,执行上述代码会报错:

ValueError: invalid literal for int() with base 10: 'peter'

另外值得注意的是,浮点数转化为整数的时候实际上是一种从浮点后的截断

pi = 3.9415926
pi = int(pi)
print(pi)

pi会被截断为3。

敲重点

  • 所有数据类型都可以转化为字符串类型
  • 类型之间不一定可以相互转化
  • 浮点数转化为整数是截断浮点后的数字

标识符

标识符是用户在编程的时候所使用的一系列名字,用于给变量、类、方法等命名。

标识符命名规则

  • 内容限定

    • 英文

    • 中文

    • 数字但是不能用于开头

    • 下划线

  • 大小写敏感

  • 不可使用关键字

python中常见的关键字

False,True,None,and,as,assert,break,class,

continue,def,del,elif,else,expect,finally,for,from,global,if,import,in,is,lambda,nonlocal,not,or,passs,raise,return,try,while,with,yield...

数字开头报错:

    1number = 555
     ^
SyntaxError: invalid syntax

关键字命名报错:

 break = 57448
          ^
SyntaxError: invalid syntax

非法字符命名报错:

    @shiue = 555
           ^
SyntaxError: invalid syntax

运算符

运算符 描述 实例
+ 36+25
- 3-2
* 3*2
/ 4/2
// 取整除(地板除) 9//2输出4,9.0//2.0输出4.0
% 取余 返回除法的余数
** 指数 3**2输出结果为9

这些运算符和=组合就组合成了赋值运算符

字符串

字符串的定义

  • 单引号定义:name = 'Peter'
  • 双引号定义:name = "Peter"
  • 三引号定义:name = '''Peter'''

三引号定义法可以跨行定义字符串

定义的字符串本身包含引号

  • 如果包含单引号,可以用双引号或者三引号括住,双引号、三引号类同
diary = "please call me 'Peter'"
  • 如果字符串包含的引号比较杂乱,难以使用第一种方法,可以使用转义字符(\)解除引号效用
diary = 'Please call me \'Peter\''

字符串的拼接

将两个字符串拼成一个字符串

  • 直接使用加法拼接
print('how'+ 'are'+'you')
howareyou

直接使用加法拼接没有分隔

加法只能用于字符串与字符串的拼接,不可拼接数字或其他类型变量

phone_number = 558897462
print("my phone number is :"+phone_number)

执行上述代码就会报错

TypeError: can only concatenate str (not "int") to str

字符串格式化

name = "Peter"
phone_number = "55697534525"
message = "My name is %s,my phone number is %s"%(name,phone_number)

%s数量要与后面的变量保持一致

  • 当%过少:
    message = "My name is %s,my phone number is"%Name%phone_number
TypeError: not all arguments converted during string formatting
  • 当%过多
    message = "My name is %s,my phone number is%s%s"%Name%phone_number
TypeError: not enough arguments for format string

通过字符串格式化可以实现字符串和数字的拼接而不需要类型转换

Name = "Peter"
phone_number = 556698418
message = "My name is %s,my phone number is %s"%(Name,phone_number)
print(message)
print(type(phone_number))
My name is Peter,my phone number is 556698418
<class 'int'>

这种拼接方式仅在拼接的时候将数字转化为字符串进行拼接,不会影响数字变量本身引用的数字类型。

其他占位符

格式符号 转化
%s 表示内容转化为字符串,放在占位符处
%d 内容转化为整数,放入占位符
%f 内容转化为浮点型

标签:name,phone,python,number,print,字符串,自学,type
From: https://www.cnblogs.com/chuwuhu/p/18363492

相关文章

  • python循环语句之while循环和for循环
    文章目录1.while循环1.1介绍1.1.1生活中的循环1.1.2程序中的循环1.2总结2.while循环应用:1~100求和2.1需求2.2分析3.while嵌套循环以及运用3.1while嵌套循环语句的语法格式3.2while嵌套循环使用3.2.1要求3.2.2参考代码4.for循环4.1for循环基本格式4.......
  • python判断语句之if语句、比较和逻辑运算符、if...else...语句、if...elif...else语句
    文章目录1.介绍1.1顺序语句1.2判断语句1.3循环语句2.if语句的基本格式2.1判断语句介绍2.2程序中的判断2.3if语句的基本格式3.比较和逻辑运算符3.1比较运算符3.2逻辑运算符4.if...else...语句4.1if...else...的语法格式4.2实例5.if...elif...else...语......
  • python-flask计算机毕业设计网上办公系统(程序+开题+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着信息技术的飞速发展,互联网已成为现代社会不可或缺的基础设施,深刻影响着各行各业的工作模式与效率。在企业管理领域,传统的办公方式逐渐......
  • python-flask计算机毕业设计中医院信息管理系统(程序+开题+论文)
    文件加密系统的设计与实现tp835本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着中医药事业的蓬勃发展,中医院作为传承与发展中医药文化的重要载体,其日常运营管理的复杂性和高效性需求......
  • 【python学习】为什么你应该放弃标准 JSON 库,转向更智能的 CommentJSON?
    在软件开发中,JSON是不可或缺的数据交换格式。然而,标准的json库并不支持注释,这使得开发者在处理复杂配置文件时感到束手束脚。本文将详细介绍commentjson库,它不仅能解析标准JSON格式,还支持带注释的JSON文件。通过对比commentjson和标准json库的用法及优势,帮助你......
  • 【python学习】深度解析LTP库:用Python轻松搞定中文NLP任务
    在自然语言处理(NLP)领域,处理中文文本一直是一个挑战。而LTP(LanguageTechnologyPlatform)是一个专为中文语言处理而开发的强大工具包,它能够帮助我们高效地完成各种NLP任务,如分词、词性标注、命名实体识别、依存句法分析、语义角色标注等。这篇博客将带你深入了解如何使用LTP......
  • Python合并两个有序链表
    题目合并两个有序链表,如l1=[1,3,4],l2=[1,2,4,5],合并后l3=[1,1,2,3,4,4,5]解决思路需要构建节点Node和链表LinkedList结构如果root节点不确定,可以创建一个哑节点Node(0),作为root节点的前节点,也是初始节点(当前节点)循环当l1当前节点不为None并且l2当前节点不为None时,那个节......
  • 2024.8.15(python管理mysql、Mycat实现读写分离)
    一、python管理mysql1、搭建主mysql[root@mysql57~]#tar-xfmysql-5.7.44-linux-glibc2.12-x86_64.tar.gz [root@mysql57~]#cp-rmysql-5.7.44-linux-glibc2.12-x86_64/usr/local/mysql[root@mysql57~]#rm-rf/etc/my.cnf[root@mysql57~]#mkdir/usr/local/......
  • python管理MySQL数据库 mysql5.7读写分离 配置mycat(twenty-nine day)
    一、pymysql管理数据库1、搭建主mysql5.7[root@mysql57~]#lsanaconda-ks.cfg mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz[root@mysql57~]#tar-xfmysql-5.7.44-linux-glibc2.12-x86_64.tar.gz [root@mysql57~]#lsanaconda-ks.cfgmysql-5.7.44-linux-glibc2......
  • Python - Structural Design Patterns
    •TheadapterpatternTheadapterpatternisastructuraldesignpatternthathelpsusmaketwoincompatibleinterfaces compatible.Whatdoesthatreallymean?Ifwehaveanoldcomponentandwewanttouseitinanew system,oranewcomponentthatwew......