Python运行方式

发布时间: 2024年11月21日 14:45      

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

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

1
#!/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
<class 'int'>
s
<class 'str'>

转换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