python 命令行输入字符串,python 字符串以及通过dos命令运行py脚本

python 字符串以及通过dos命令运行py脚本

python 字符串以及通过dos命令运行py脚本

由于 Python 的字符串类型是 str,在内存中以 Unicode 表示,一个字符对应若干个字节。如果要在网络上传输,或者保存到磁盘上,就需要把str 变为以字节为单位的 bytes。

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

以 Unicode 表示的 str 通过 encode()方法可以编码为指定的 bytes,例如:

>>> 'ABC'.encode('ascii')

b'ABC'

>>> '中文'.encode('utf-8')

b'\xe4\xb8\xad\xe6\x96\x87'

>>> '中文'.encode('ascii')

Traceback (most recent call last):

File "", line 1, in

UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1:

ordinal not in range(128)

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

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

>>> b'ABC'.decode('ascii')

'ABC'

>>> b'\xe4\xb8\xad\xe6\x96\x87'.decode('utf-8')

'中文'

c591cb4b51a84d329a6a9983fe484936.png

要计算 str 包含多少个字符,可以用 len()函数:

len('ABC')

3

>>> len('中文')

2

len()函数计算的是 str 的字符数,如果换成 bytes, len()函数就计算字节数:

>>> 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 进行转换。str 和 bytes 互相转换时,需要指定编码。最常用的编码是 UTF-8。

在 Python 中,采用的格式化方式和 C 语言是一致的,用%实现,举例如

下:

>>> 'Hello, %s' % 'world'

'Hello, world'

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

'Hi, Michael, you have $1000000.

如果只有一个%?,括号可以省略。

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

为字符串:

>>> 'Age: %s. Gender: %s' % (25, True)

'Age: 25. Gender: True'

有些时候,字符串里面的%是一个普通字符怎么办?这个时候就需要转

义,用%%来表示一个%:

>>> 'growth rate: %d %%' % 7

'growth rate: 7 %'

print('包含中文的str')

print(ord('A'))

print(ord('中'))

print(chr(66))

print(chr(21334))

print('\u4e2d\u6587')

# 纯英文的str可以用ASCII编码为bytes,内容是一样的

print('ABC'.encode('ascii'))

# 含有中文的str可以用UTF-8编码为bytes。

print('中文'.encode('utf-8'))

# 如果我们从网络或磁盘上读取了字节流,那么读到的数据就是bytes。

# 要把bytes变为str,就需要用decode()方法

print(b'ABC'.decode('ascii'))

print(b'\xe4\xb8\xad\xe6\x96\x87'.decode('utf-8'))

# 要计算str包含多少个字符,可以用len()函数

print(len('ABC'))

print(len('中文'))

# len()函数计算的是str的字符数,如果换成bytes,len()函数就计算字节数

# 1个中文字符经过UTF-8编码后通常会占用3个字节,而1个英文字符只占用1个字节。

print(len(b'ABC'))

print(len(b'\xe4\xb8\xad\xe6\x96\x87'))

print(len('中文'.encode('utf-8')))

print('Hello %s' % 'world')

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

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

print('%.2f %%' % 3.134233)

s1 = 72

s2 = 85

r = (s2 - s1)/s1 * 100

print('%02.1f%%' % r)

在脚本的根目录下shift+鼠标

eb00b92d74efdaedf66542d60ef0bae2.png

自动切换到脚本根目录

0ada2f1a74ff2353bae321bcc261fbda.png

也可以通过cmd运行

A: cmd

B E: E后有回车,切换盘符到E

C cd py脚本目录    将py脚本目录的层次关系路径复制到窗口

80703798fb5d0362d17e890677c7a9d4.png

D运用python命令

b8d74eb547898d2d23159fd1277dbcf3.png

python 字符串以及通过dos命令运行py脚本相关教程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值