Python基础(一)

xiaoxiao2021-02-28  26

1. 输出

字符串得加‘ ’ 若遇到空格,则会输出空格。 与java类似,print('100+200',100+200)输出为:100+200 300

2. 输入:

·Python提供了input()让用户输入字符串,并存放到一个变量里。 代码示例:

name=input("\n请输入您的姓名"); print('您的姓名为:',name);

3. Python基础:

·Python语法采用缩进格式,使用4个空格缩进格式为准。在文本编辑器中,需要设置把Tab自动转换为4个空格,确保不混用Tab和空格。 ·注释以#开头 ·Python大小写敏感

4. 数据类型和变量:

·整数:Python可以处理任意大小的整数,包括负整数。 例如:1,-100,-200,0等。 使用十六进制表示整数更方便。例如:0xff00、0xa5b4c3d2

·浮点数:可以用数学写法表示:1.23、0.26、-3.02 也可以用科学计数法表示:把10用e替代,1.23x10的9次方就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5

·整数和浮点数内部存储方式也不同,整数时精确运算,浮点可能会四舍五入的误差。

·字符串:字符串是以”或者”“括起来的任意文本,比如’abc’,”xyz”等等。 如果字符串内既包含’又包含”。可以用转义字符\来标识。例如:’I\’m\”OK\”!’ 表示的字符串是I’m”OK”! 允许r”表示”内部的字符不转义。例如:print(r'\\\t\\') 输出为:\\\t\\ 允许”’…”’的格式表示多行内容。

例如:print('''line1 输出为:line1 line2 line2 line3''') line3

·布尔值:只有True和False两种。必须为True和False。大小写敏感。 布尔值可以用and、or和not运算。

and是与运算,只有所有都是true,and运算结果才是True; or是或运算,只要其中有一个为true,or运算结果为True; not是非运算。

·空值:空值用None表示。不能理解为0,相当于java中的null。 ·常量:常量就是不能变的量。与JAVA中类似。PI=3.14159265359。


增加解释:

Python中有两种除法。 10/3=3.33333333333。’/’的结果永远为浮点数。 10//3=3。’//’为地板除,永远为整数。

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

ord(‘A’) 输出为: 65 ord(‘中’) 输出为:20013 chr(66) 输出为:’B’ chr(25991) 输出为:’文’ ·如果知道字符的整数编码,还可以用十六进制这么写: ‘\u4e2d\u6587’ 输出为:’中文’

·Python对bytes类型的数据用带b前缀的单引号或双引号表示。

x = b'ABC'

要注意区分’ABC’和b’ABC’。前者为str。后者为bytes,每个字符只占用一个字节。

例如:

'ABC'.encode('ascii') b'ABC' '中文'.encode('utf-8') b'\xe4\xb8\xad\xe6\x96\x87' '中文'.encode('ascii')

纯英文的str可以用ASCII编码为bytes,内容是一样的,含有中文的str可以用UTF-8编码为bytes。含有中文的str无法用ASCII编码,因为中文编码的范围超过了ASCII编码的范围,Python会报错。 在bytes中,无法显示为ASCII字符的字节,用\x##显示。


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

b'ABC'.decode('ascii') 'ABC' b'\xe4\xb8\xad\xe6\x96\x87'.decode('utf-8') '中文'

要计算str包含多少个字符或者bytes包含多少字节可以用len()函数。

len('ABC') 3 len('中文') 2 len(b'ABC') 3 len(b'\xe4\xb8\xad\xe6\x96\x87') 6 len('中文'.encode('utf-8')) 6

从运行结果可见:1个中文字符经过UTF-8编码后通常会占用3个字节,而1个英文字符只占用1个字节。


在操作字符串时,我们经常遇到str和bytes的互相转换。为了避免乱码问题,应当始终坚持使用UTF-8编码对str和bytes进行转换。

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

#!/usr/bin/env python3 # -*- coding: utf-8 -*-

第一行注释是为了告诉Linux/OS X系统,这是一个Python可执行程序,Windows系统会忽略这个注释; 第二行注释是为了告诉Python解释器,按照UTF-8编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码。 申明了UTF-8编码并不意味着你的.py文件就是UTF-8编码的,必须并且要确保文本编辑器正在使用UTF-8 without BOM编码。

格式化:在Python中,采用的格式化方式和JAVA也有相似之处。

'Hello, %s' % 'world' 'Hello, world' 'Hi, %s, you have $%d.' % ('Michael', 1000000) 'Hi, Michael, you have $1000000.'

%运算符就是用来格式化字符串的。 在字符串内部:

%s表示用字符串替换 %d表示用整数替换, %f表示用浮点数替换,%x表示用16进制数替换,

有几个%占位符,后面就跟几个变量或者值,顺序要对应好。如果只有一个%,括号可以省略。 其中,格式化整数和浮点数还可以指定是否补0和整数与小数的位数,例如:

'--d' % (3, 1) ' 3-01' '%.2f' % 3.1415926 '3.14'

如果你不太确定应该用什么,%s永远起作用,它会把任何数据类型转换为字符串 当%是一个普通的字符串时,可以使用转义符%。用%%表示一个%

'growth rate: %d %%' % 7 'growth rate: 7 %'
转载请注明原文地址: https://www.6miu.com/read-1400065.html

最新回复(0)