0

0

Python中变量和数据类型介绍

零下一度

零下一度

发布时间:2017-06-30 13:39:24

|

1787人浏览过

|

来源于php中文网

原创

1、变量和数据类型

1.1变量

1.每个变量都存储了一个值——与变量相关联的信息。

2.变量不仅可以为整数或浮点数,还可以是字符串,可以是任意数据类型。

1.1.1变量的命名和使用

变量名只能包含字母、数字和下划线,且数字不能打头。变量名不能包含空格,但可以使用下划线间隔。不能把python关键字和函数名作为变量名。变量名应既简短又具有描述性。慎用小写字母l和大写字母O,因为它们可能被人错看成数字1和0。

1.1.2使用变量时避免命名错误

出现错误时解释器会提供一个traceback(回溯)。Traceback是一条记录,指出了什么地方陷入困境。

1.2字符串str

1.字符串就是一系列字符。是一种数据类型,在Python中用引号括起的都是字符串,可单引号也可双引号

立即学习Python免费学习笔记(深入)”;

2.Unicode标准也在不断发展,但最常用的是用两个字节表示一个字符(如果要用到非常偏僻的字符,就需要4个字节)。现代操作系统和大多数编程语言都直接支持Unicode。把Unicode编码转化为“可变长编码”的UTF-8编码。

3.Python对bytes类型的数据用带b前缀的单引号或双引号表示:x = b'ABC'。以Unicode表示的str通过encode()方法可以编码为指定的bytes。

'ABC'.encode('ascii')

b'ABC

反过来,如果我们从网络或磁盘上读取了字节流,那么读到的数据就是bytes。要把bytes变为str,就需要用decode()方法:

b'ABC'.decode('ascii')

'ABC

4. 对于单个字符的编码,Python提供了ord()函数获取字符的整数表示,chr()函数把编码转换为对应的字符:

>>> ord('A')

65

>>> ord('中')

20013

>>> chr(66)

'B'

>>> chr(25991)

'文'

5.要计算str包含多少个字符,可以用len()函数,len()函数计算的是str的字符数,如果换成bytes,len()函数就计算字节数。可见,1个中文字符经过UTF-8编码后通常会占用3个字节,而1个英文字符只占用1个字节。

1.2.1对字符串的操作

1.方法是Python可对数据执行的操作。

2.title()以首字母大写的方式显示每个单词,即将每个单词的首字母都改为大写。

3.upper()将字符串改为全部大写。lower()将字符串改为全部小写。

4.如果字符串至少有一个字母,并且所有字母都是大写或小写,isupper()和 islower()方法就会相应地返回布尔值 True。否则,该方法返回 False。

5.salpha()返回 True,如果字符串只包含字母,并且非空;

6.isalnum()返回 True,如果字符串只包含字母和数字,并且非空;

7.sdecimal()返回 True,如果字符串只包含数字字符,并且非空;

8.sspace()返回 True,如果字符串只包含空格、制表符和换行,并且非空;

9.istitle()返回 True,如果字符串仅包含以大写字母开头、后面都是小写字母的单词。

10.startswith()和 endswith()方法返回 True,如果它们所调用的字符串以该方法传入 的字符串开始或结束。否则,方法返回 False。

11.join()方法在一个字符串上调用,参数是一个字符串列表,返回一个字符串。

>>> ', '.join(['cats', 'rats', 'bats'])

'cats, rats, bats'

>>> ' '.join(['My', 'name', 'is', 'Simon'])

'My name is Simon'

 >>> 'ABC'.join(['My', 'name', 'is', 'Simon'])

'MyABCnameABCisABCSimon'

12.split()方法做的事情正好相反:它针对一个字符串调用,返回一个字符串列表。也可以向split()方法传入一 个分割字符串,指定它按照不同的字符串分割。

>>> 'My name is Simon'.split()

['My', 'name', 'is', 'Simon']

13.rjust()和 ljust()字符串方法返回调用它们的字符串的填充版本,通过插入空格来 对齐文本。这两个方法的第一个参数是一个整数长度,用于对齐字符串。rjust()和 ljust()方法的第二个可选参数将指定一个填充字符,取代空格字符。

>>> 'Hello'.rjust(20, '*')

'***************Hello'

 >>> 'Hello'.ljust(20, '-')

'Hello---------------'

14.center()字符串方法与 ljust()与 rjust()类似,但它让文本居中,而不是左对齐或右对齐。

15.sort()将字符串排序。

16.请务必注意,Python程序是大小写敏感的,如果写错了大小写,程序会报错。

17.合并——Python使用加号+来合并字符串

  1. first_name = "ada" 

  2. last_name = "lovelace" 

  3. full_name = first_name + " " + last_name 

  4. print(full_name)

  5. ada Lovelace

18.可以在字符串开始的引号之前加上 r,使它成为原始字符串。 “原始字符串”完 全忽略所有的转义字符,打印出字符串中所有的倒斜杠。

>>> print(r'That is Carol\'s cat.')

 That is Carol\'s cat.

19.删除空白:方法rstrip()右   lstrip()左   strip()两边

20. 语法错误:是一种时不时会遇到的错误,在用单引号括起的字符串中,如果包含撇号,就将导致错误。双引号不会。

21.Print() 打印,逗号会空一格。

22.pyperclip 模块有 copy()和 paste()函数,可以向计算机的剪贴板发送文本,或从 它接收文本。

23.字符串有个replace()方法

>>> a = 'abc'

>>> a.replace('a', 'A')

'Abc'

1.2.2空值

空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。

1.2.3常量

常量就是不能变的变量,比如常用的数学常数π就是一个常量。在Python中,通常用全部大写的变量名表示常量:PI = 3.14159265359

1.2.4赋值

在Python中,等号=是赋值语句,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量:

a = 123 # a是整数

print(a)

a = 'ABC' # a变为字符串

print(a)

赋值语句:a, b = b, a + b

t = (b, a + b) # t是一个tuple

动力先锋仿阿里巴巴B2B电子商务系统
动力先锋仿阿里巴巴B2B电子商务系统

前台功能介绍:1、网页首页显示有高级会员推荐,精品推荐,商业机会分类列表,最新供求信息,网站动态,推荐企业,行业动态等;2、商业机会栏目功能有:二级分类,已经带有详细分类的数据库,后台可以更改增加操作,并可以推荐公司,栏目分为分类显示信息,最新的采购、供应、合作和代理信息,搜索时同样按分类,信息,时间,交易类型等搜索;3、展厅展品栏目功能:二级分类,已经带有详细分类的数据库,后台可以更改增加操作,

下载

a = t[0]

b = t[1]

1.2.5格式化

Python中格式化有两种,第一种用%实现,第二种{ } format格式。

'Hello, %s' % 'world’

% 运算符就是用来格式化字符串的。在字符串内部,%s表示用字符串替换,%d表示用整数替换,有几个%?占位符,后面就跟几个变量或者值,顺序要对应好。如果只有一个%?,括号可以省略。常用占位符:

%d  整数

%f  浮点数

%s  字符串

%x  十六进制整数

 

其中,格式化整数和浮点数还可以指定是否补0和整数与小数的位数:

>>> '%2d-%02d' % (3, 1)

' 3-01'

>>> '%.2f' % 3.1415926

'3.14'

如果你不太确定应该用什么,%s永远起作用,它会把任何数据类型转换为字符串。

有些时候,字符串里面的%是一个普通字符,需要转义,用%%来表示一个 % 。

第二种格式化方法,format,通过 {} 来代替 % 。

1、正常使用

>>> print("我叫{},今年{}岁了".format("小李", 20))

我叫小李,今年20岁了

2、还可以通过在括号里填写数字,修改格式化的顺序

>>> print("我叫{1},今年{0}岁了".format("小李", 20))

我叫20,今年小李岁了

3、通过key取变量

>>> print("我叫{name},今年{age}岁了".format(name="小李", age=20))

我叫小李,今年20岁了

1.2.6转义字符

空白——泛指任何非打印字符,如空格、制表符和换行符。

转义字符\可以转义很多字符 \t 制表符    \n 换行

字符\本身也要转义,所以\\表示的字符就是\

如果字符串里面有很多字符都需要转义,Python中可以用r''表示''内部的字符串默认不转义:

>>> print('\\\t\\')

\       \

>>> print(r'\\\t\\')

\\\t\\

1.3数字

1.3.1整数 int

可以进行四则运算。

计算机由于使用二进制,所以,有时候用十六进制表示整数比较方便,十六进制用0x前缀和0-9,a-f表示,例如:0xff00,0xa5b4c3d2,等。

整数的除法是精确的。在Python中,有两种除法,一种除法是/ , /除法计算结果是浮点数,即使是两个整数恰好整除,结果也是浮点数。还有一种除法是//,称为地板除,两个整数的除法仍然是整数。

% 取余数。

1.3.2浮点数float

Python将带小数的数字都称为浮点数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,比如,1.23x109和12.3x108是完全相等的。

对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23x109就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5,等。

1.3.3使用函数str()避免错误

数据类型检查可以用内置函数isinstance()实现:

def my_abs(x):

    if not isinstance(x, (int, float)):

        raise TypeError('bad operand type')

    if x >= 0:

        return x

    else:

        return -x

1.4注释

1. 以#开头的语句是注释,注释是给人看的,可以是任意内容,解释器会忽略掉注释。其他每一行都是一个语句,当语句以冒号:结尾时,缩进的语句视为代码块。

#。。。。。。

2.由于Python源代码也是一个文本文件,所以,当你的源代码中包含中文的时候,在保存源代码时,就需要务必指定保存为UTF-8编码。当Python解释器读取源代码时,为了让它按UTF-8编码读取,我们通常在文件开头写上这两行:

#!/usr/bin/env python3

# -*- coding: utf-8 -*-

3.文档字符串的注释   ”””      ”””

1.5Python之禅

The Zen of Python, by Tim Peters

  1. Beautiful is better than ugly.

  2. Explicit is better than implicit.

  3. Simple is better than complex.

  4. Complex is better than complicated.

  5. Flat is better than nested.

  6. Sparse is better than dense.

  7. Readability counts.

  8. Special cases aren't special enough to break the rules.

  9. Although practicality beats purity.

  10. Errors should never pass silently.

  11. Unless explicitly silenced.

  12. In the face of ambiguity, refuse the temptation to guess.

  13. There should be one-- and preferably only one --obvious way to do it.

  14. Although that way may not be obvious at first unless you're Dutch.

  15. Now is better than never.

  16. Although never is often better than *right* now.

  17. If the implementation is hard to explain, it's a bad idea.

  18. If the implementation is easy to explain, it may be a good idea.

  19. Namespaces are one honking great idea -- let's do more of those!

相关文章

python速学教程(入门到精通)
python速学教程(入门到精通)

python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
2026赚钱平台入口大全
2026赚钱平台入口大全

2026年最新赚钱平台入口汇总,涵盖任务众包、内容创作、电商运营、技能变现等多类正规渠道,助你轻松开启副业增收之路。阅读专题下面的文章了解更多详细内容。

33

2026.01.31

高干文在线阅读网站大全
高干文在线阅读网站大全

汇集热门1v1高干文免费阅读资源,涵盖都市言情、京味大院、军旅高干等经典题材,情节紧凑、人物鲜明。阅读专题下面的文章了解更多详细内容。

32

2026.01.31

无需付费的漫画app大全
无需付费的漫画app大全

想找真正免费又无套路的漫画App?本合集精选多款永久免费、资源丰富、无广告干扰的优质漫画应用,涵盖国漫、日漫、韩漫及经典老番,满足各类阅读需求。阅读专题下面的文章了解更多详细内容。

36

2026.01.31

漫画免费在线观看地址大全
漫画免费在线观看地址大全

想找免费又资源丰富的漫画网站?本合集精选2025-2026年热门平台,涵盖国漫、日漫、韩漫等多类型作品,支持高清流畅阅读与离线缓存。阅读专题下面的文章了解更多详细内容。

7

2026.01.31

漫画防走失登陆入口大全
漫画防走失登陆入口大全

2026最新漫画防走失登录入口合集,汇总多个稳定可用网址,助你畅享高清无广告漫画阅读体验。阅读专题下面的文章了解更多详细内容。

11

2026.01.31

php多线程怎么实现
php多线程怎么实现

PHP本身不支持原生多线程,但可通过扩展如pthreads、Swoole或结合多进程、协程等方式实现并发处理。阅读专题下面的文章了解更多详细内容。

1

2026.01.31

php如何运行环境
php如何运行环境

本合集详细介绍PHP运行环境的搭建与配置方法,涵盖Windows、Linux及Mac系统下的安装步骤、常见问题及解决方案。阅读专题下面的文章了解更多详细内容。

0

2026.01.31

php环境变量如何设置
php环境变量如何设置

本合集详细讲解PHP环境变量的设置方法,涵盖Windows、Linux及常见服务器环境配置技巧,助你快速掌握环境变量的正确配置。阅读专题下面的文章了解更多详细内容。

0

2026.01.31

php图片如何上传
php图片如何上传

本合集涵盖PHP图片上传的核心方法、安全处理及常见问题解决方案,适合初学者与进阶开发者。阅读专题下面的文章了解更多详细内容。

2

2026.01.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
最新Python教程 从入门到精通
最新Python教程 从入门到精通

共4课时 | 22.4万人学习

Django 教程
Django 教程

共28课时 | 3.7万人学习

SciPy 教程
SciPy 教程

共10课时 | 1.3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号