python教程1:Python基础之数据类型和变量、字符串和编码
视频链接:http://www.bilibili.com/video/av10730372/
我是在Linux下玩python的,Linux下默认安装python,直接打个pyhon3就好了,python大小写敏感
我们来写第一个简单的python程序
#!/usr/bin/env python3
print("Hello World")
怎么运行呢?有人说是./运行,然而我试了试并不可以....这样才行.....
python name.py
print里面也可以输出多个字符串,用 , 进行分隔,显示的内容是空格
#!/usr/bin/python
print('', '', '')
结果是
1 2 3
也能来计算数字
#!/usr/bin/python
print('100 + 200 =', 100 + 200)
在Python里面单引号和双引号是一样的,所以单引号里面的还是字符串,结果是
100 + 200 = 300
输入和输出
name=input('please enter you name:')
print('hello',name) #变量可以print出来也可以直接打个变量名
缩进
a = 100
if a >= 0: #以:结尾说明下面的缩进的语句是代码块
print(a) #注意!缩进最好是4个空格
else:
print(-a)
数据类型
1.整型 int
2.浮点型 float
3.字符串 以单引号或双引号括起来的任意文本,\可以转义字符
4.布尔值 要么是True要么是False 注意大小写!!! 与或非
5.空值 用None表示
转义字符\
print('\\\t\\')
\ \
print(r'\\\t\\') #前面加一个r就是不转义
\\\t\\
变量
变量名必须是大小写英文、数字和_的组合,且不能用数字开头
a=1 #变量a是一个整数
t_001='T007' #变量t_007是一个字符串
Answer=True #变量Answer是一个布尔值
在python中,变量分为动态语言和静态语言
#动态语言,就是变量本身类型不确定 a = 123 # a是整数
print(a)
a = 'ABC' # a变为字符串
print(a)
#静态语言,变量类型已被指定 int a = 123; // a是整数类型变量
a = "ABC"; // 错误:不能把字符串赋给整型变量
我们来做个练习
a = 'ABC' #创建了字符串'ABC'和变量a,并把a指向'ABC'
b = a #创建变量b,并把b指向'ABC'
a = 'XYZ'
print(b)
问:b的值是什么?
答案是'ABC'
除法
python中有两种除法
/除法计算结果是浮点数
>>> 9 / 3
3.0
//地板除,计算结果是整数
>>> 10 // 3
3
%求余运算
>>> 10 % 3
1
字符串和编码
ASCII码仅仅支持英文
GB2312支持中文
....支持.....
全球上百种语言这么乱怎么办?Unicode编码标准应运而生,支持所有语言,但是也有缺点用,Unicode编码比ASCII编码需要多一倍的存储空间,在存储和传输上就十分不划算。所以就有了UTF-8编码


Python的字符串
在Python 3版本中,字符串是以Unicode编码的,也就是说,Python的字符串支持多语言
>>> print('包含中文的str')
包含中文的str
对于单个字符的编码,Python提供了ord()函数获取字符的整数表示,chr()函数把编码转换为对应的字符
>>> ord('A')
65
>>> ord('中')
20013
>>> chr(66)
'B'
>>> chr(25991)
'文'
Python对bytes类型的数据用带b前缀的单引号或双引号表示要注意区分'ABC'和b'ABC',前者是str,后者虽然内容显示得和前者一样,但bytes的每个字符都只占用一个字节
x = b'ABC'
以Unicode表示的str通过encode()方法可以编码为指定的bytes,例如:
#纯英文字符串可以使用ASCII编码为bytes
>>> 'ABC'.encode('ascii')
b'ABC' #中文字符串可以使用utf-8编码为bytes
>>> '中文'.encode('utf-8')
b'\xe4\xb8\xad\xe6\x96\x87' #中文字符串使用ASCII编码就会报错,因为不支持
>>> '中文'.encode('ascii')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128)
反过来,如果我们从网络或磁盘上读取了字节流,那么读到的数据就是bytes。要把bytes变为str,就需要用decode()方法:
>>> b'ABC'.decode('ascii')
'ABC'
>>> b'\xe4\xb8\xad\xe6\x96\x87'.decode('utf-8')
'中文'
len() 函数
#计算字符串包含多少个字符
>>> len('ABC')
3
>>> len('中文')
2 #计算bytes的字节数
>>> len(b'ABC')
3
>>> len(b'\xe4\xb8\xad\xe6\x96\x87')
6
>>> len('中文'.encode('utf-8'))
6
由于python源代码也是一个文本文件,所以当包含中文的时候,在进行编码时务必使用utf-8编码,为了如此,我们通常在文件开头写上两行
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
这里还需要注意的是在你写python的文本编辑器里面最好把编码改成utf-8才可以
格式化
>>> 'Hello, %s' % 'world'
'Hello, world'
>>> 'Hi, %s, you have $%d.' % ('Michael', 1000000)
'Hi, Michael, you have $1000000.'

>>> '%2d-%02d' % (3, 1)
' 3-01'
>>> '%.2f' % 3.1415926
'3.14'
有些时候,字符串里面的%是一个普通字符怎么办?这个时候就需要转义,用%%来表示一个%
>>> 'growth rate: %d %%' % 7
'growth rate: 7 %'
python教程1:Python基础之数据类型和变量、字符串和编码的更多相关文章
- Learning Python 004 基础的数据类型和变量
Python 基础的数据类型和变量 数据类型 整数 Python可以处理任意大小的整数,当然包括负整数. Python表示十六进制也用0x前缀. 浮点数 1.23x10^9和12.3x10^8是完全相 ...
- python入门灵魂5问--python学习路线,python教程,python学哪些,python怎么学,python学到什么程度
一.python入门简介 对于刚接触python编程或者想学习python自动化的人来说,基本都会有以下python入门灵魂5问--python学习路线,python教程,python学哪些,pyth ...
- 极简python教程02:基础变量,删繁就简
python极简教程已经开赛,如果错过说明可以回翻: 极简python教程:赛前说明 借这个机会,我再讲讲我的教程和其他网上的教程的区别: 1 我分享的内容,是我在工作中会高频使用的语法,是精华内容 ...
- python学习第三天:python基础(数据类型和变量)
注释 以 # 开头的语句是注释,如,注释不会被编译运行: 格式 当语句以冒号:结尾时,缩进的语句视为代码块.按照约定俗成的管理,应该始终坚持使用4个空格的缩进(在文本编辑器中,需要设置把Tab自动转 ...
- Python基础之数据类型和变量
数据类型 计算机顾名思义就是可以做数学机器,可以处理各种数值,计算机还能处理文本.图形.音频.视频.网页等各种各样的数据,不同的数据是需要定义不同的数据类型的,在Python中,能够直接处理的数据 ...
- Python教程:Python中的for 语句
Python 中的 for 语句与你在 C 或 Pascal 中可能用到的有所不同. Python教程 中的 for 语句并不总是对算术递增的数值进行迭代(如同 Pascal),或是给予用户定义迭代步 ...
- python基础之数据类型与变量
一.变量 1 什么是变量之声明变量 #变量名=变量值age=18gender1='male' gender2='female' 2 为什么要有变量 变量作用:"变"=>变化, ...
- Python基础之数据类型、变量、常量
数据类型 整数:任意大小的整数,十六进制用0x前缀 浮点数:浮点数也就是小数,科学计数法1.23x109就是1.23e9,0.000012可以写成1.2e-5 字符串:以单引号'或双引号"括 ...
- 第三篇:python基础之数据类型与变量
阅读目录 一.变量 二.数据类型 2.1 什么是数据类型及数据类型分类 2.2 标准数据类型: 2.2.1 数字 2.2.1.1 整型: 2.2.1.2 长整型long: 2.2.1.3 布尔bool ...
随机推荐
- SQL Server 全文搜索
SQL Server 的全文搜索(Full-Text Search)是基于分词的文本检索功能,依赖于全文索引.全文索引不同于传统的平衡树(B-Tree)索引和列存储索引,它是由数据表构成的,称作倒转索 ...
- 揭秘memset与sizeof的结合使用方法
memset与sizeof为什么经常结合起来用呢? 一.memset介绍 memset函数是C++中的一个函数,它将从给定地址开始,逐个字节刷内存,初始化它们为给定的参数. 基本用法: void * ...
- Alpha 贡献分及转会人员确定
贡献分如下: 转会人员:金东禾 转到队伍:bugphobia
- 作业C#程序分析
阅读下面程序,请回答如下问题: 问题1:这个程序要找的是符合什么条件的数? 问题2:这样的数存在么?符合这一条件的最小的数是什么? 问题3:在电脑上运行这一程序,你估计多长时间才能输出第一个结果?时间 ...
- Linux命令(六) 查看文件 cat tac more less tail
如果要查看文件,使用 cat less tac tail 和 more 中的任意一个即可. 1.cat 使用 cat 命令查看文件时会显示整个文件的内容,注意cat只能查看文本文件的内容,如 ...
- Linux命令(十) 在文件或目录之间创建链接 ln
命令简介 ln 命令用于连接文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则会把前面指定的所有文件或目录复制到该目录中.若同时指定多个文件或目录,且最后的目的地是一个 ...
- Git从零开始(三)
一.远程仓库管理 1.将本地内容推送到远程库 先关联远程库,执行命令: git remote add origin https://github.com/Hollydan/gitstore.git ( ...
- 平时在PHP编码时有没有注意到这些问题
编出一手好代码,这个是需要你在平时开发中日积月累的,平时如果你有注意到以下的那些代码的编码,那么祝贺你,你在技能提升这方面已经垫下了一些基础,编写出一手好代码,说白了就是你特么注意到性能这块的问题,代 ...
- const和typedef的常见用法详解
一.说说const 一般而言,const主要是用来防止定义的对象再次被修改,定义对象变量时要初始化变量. 常见用法如下: 1.用于定义常量变量,这样这个变量在后面就不可以再被修改 const int ...
- information_schema系列十一
1: INNODB_CMP 和INNODB_CMP_RESET 这两个表存储的是关于压缩INNODB信息表的时候的相关信息, Column name Description PAGE_SIZE Com ...