亚欧大陆科学资源管理

Eurasian Continental Scientific Resource Management

Register    |    Login

Python运行方式

Release time: Nov. 21, 2024, 2:45 p.m.      

In [1]:

from env_helper import info; info()

页面更新时间: 2024-09-25 16:23:27 运行环境: Linux发行版本: Debian GNU/Linux 12 (bookworm) 操作系统内核: Linux-6.1.0-25-amd64-x86_64-with-glibc2.36 Python版本: 3.11.2

Python运行方式

Python交互运行方式

为了快速开始使用,先看一下交互式运行的用法:

Linux下, 打开终端, 在其中键入 python3 (若安装 ipython,可以键入 ipython3 )。 这样就打开了交互式的Python Shell。

在Shell下键入的内容.

In [2]:

print('Hello, Python World!')

Hello, Python World!

print() 格式化输出函数,输出括号里的参数,参数可以是字符串,也可以是数字。如果参数是空,输出结果也是空。

In [3]:

strval1 = 'Welcome ' strval2 = 'Python World!' strval1 + strval2

Out[3]:

'Welcome Python World!'

给变量 strval1strcal2 赋值。格式化输出变量。

Python运行程序文件

还有一种方式是将 Python 代码写入到文件中(不是一行行的粘贴), 在 Linux 下,可以通过终端、文本编辑器(配置了运行环境的VIM)或 IDE(如 PyCharm ) 中来运行; 在Windows下,可以在终端,或在 IDLE 中打开然后运行。 这样的文件,被称为脚本文件。通过这种方式,能够修改和实验这些设置,然后重新运行脚本。

使用文本编辑器新建一个文件,输入下面代码:

In [4]:

print('Hello, Python World!') strval1 = 'Welcome' strval2 = 'Python World!' print(strval1) print(strval1 + strval2)

Hello, Python World! Welcome WelcomePython World!

保存文件, 注意后缀为 py 。 例如, 保存为 demo1.py 。 然后Windows下打开DOS窗口, 输入:

python3 path_to_filedemo1.py

Linux下类似。 若提示没有python程序, 参考前面环境变量设置部分。

Linux下面的运行方式

在Linux下,创建一个空白的纯文本文件,然后给其添加可执行的权限:

chmod +x world.py

然后,在脚本文件的头部添加如下的代码行:

!/usr/bin/env python3

在下面,就如同交互模式一样,将代码写入到文件中。当然代码要注意其语法。 最后就是保存文件,保存的时候,有的编辑器或操作系统中,要注意文本文件的编码。 使用 Python 3 ,要将文件保存为 UTF-8 编码的文件。

关于中文的处理,在Python也是一个经常会遇到的问题,尽管在 Python3中已经大大简化了文件编码的问题, 但是在 GIS 的应用,还有许多的类库在继续使用 Python 2。 这个问题的阐述足够使用一个单独的章来说明,但是不适合在本书中展开说明,所以在本书中不会做过多的说明。

In [41]:

path = r'e:\book' print(path)

e:\book

In [42]:

print(' \n\t"\r ')

** **

转义符

In [43]:

len(path)

Out[43]:

7

长度

In [44]:

str_val = 's ' + 'pam' print(str_val) str_val = 's ' 'pam' print(str_val)

s pam s pam

连接's ' + 'pam' 或 's''pam' 建议使用前者,可读性

In [45]:

print('=' * 10)

==========

重复输出

In [46]:

print('abc'+str(9))

abc9

Python不允许在+表达式中出现其他类型,需要手工转换:

In [47]:

val = int('42') print(val) val =str(42) print(val) val = float('42.0') print(val)

42 42 42.0

字符串转换

In [48]:

print(ord('s')) #转ASCII print(type(ord('s'))) #转ASCII print(chr(115)) #转字符 print(type(chr(115)))

115 s

转换ASCII与字符

In [49]:

s='spam' k = '|'.join(s) print(k) s='spam' l = list(s) print(l) k = '|'.join(l) print(k)

s|p|a|m ['s', 'p', 'a', 'm'] s|p|a|m

合并与分割

In [50]:

s = s+'a' s = s[3:] + 'b' s = s.replace('pl','pa')

字符串无法进行修改,但可以通过重新赋值的方法变通

In [51]:

s = 'abcdefg' print(s[1:]) print(s[1:-1])

bcdefg bcdef

字符串的索引和切片,前面刚讲过

In [52]:

str_val = 'abcd' str_val = str_val.capitalize() print(str_val)

Abcd

字符串第一个字符大写

In [53]:

str_val = str_val.lower() print(str_val)

abcd

全变小写

In [54]:

print(str_val.isalpha()) print(str_val.isdigit())

True False

isxxx 函数。更多请找参考手册

In [55]:

str_val = ' abcdfgxabcdyzcdba ' str_val = str_val.strip() print(str_val) str_val = str_val.strip('a') print(str_val)

abcdfgxabcdyzcdba bcdfgxabcdyzcdb

去掉字符

In [56]:

tepstr = str_val str_val = str_val.strip('bc') print(str_val) str_val = tepstr.strip('cb') print(str_val)

dfgxabcdyzcd dfgxabcdyzcd

In [57]:

str_val = list(str_val) str_val.sort() str_val = ''.join(str_val) print(str_val)

abccdddfgxyz

字符串排序

In [58]:

str_val = str_val.upper() print(str_val)

ABCCDDDFGXYZ

全部大写

In [59]:

ind_list = range(5, 15) ind_list = [str(x) for x in ind_list] print(ind_list) str_list = [ind.zfill(3) for ind in ind_list] print(str_list) ''' 格式化输出 : %c 单个字符 %d 十进制整数 %o 八进制整数 %s 字符串 %x 十六进制整数, 其中字母小写 %X 十六进制整数, 其中字母大写 ''' str_val = 'The are %d %s in the team.' % (2, 'girls') print(str_val)

['5', '6', '7', '8', '9', '10', '11', '12', '13', '14'] ['005', '006', '007', '008', '009', '010', '011', '012', '013', '014'] The are 2 girls in the team.

返回长度width的字符串,原字符串右对齐,前面填充0

Scientific - Model