Python语言程序设计 学习笔记(一)基础、方法函数、文件读写、数据表示以及字符集

文章目录

  • 1.Python基础部分
    • 1.1 注释
    • 1.2 格式化字符串
    • 1.3 数据类型转换
    • 1.4 Python List(列表)
      • 1.4.1基本
      • 1.4.2 列表切片
      • 1.4.3 常用方法
    • 1.5 元组
    • 1.6 字典
      • 1.6.1 生成
      • 1.6.2 访问
      • 1.6.3 常用方法
    • 1.7 输入输出
    • 1.8 布尔运算符
    • 1.9 For循环在字典中的使用
    • 1.10 Range
    • 1.11 异常
  • 2.Python 方法(函数)
    • 2.1 基本语法
    • 2.2 全局变量和局部变量
    • 2.3 默认参数
    • 2.4 可变长参数列表
    • 2.5 参数的顺序
  • 3.读写文件
    • 3.1 读写模式
    • 3.2 读写二进制文件
    • 3.3 删除和重命名文件
  • 4.Python中的数据
    • 4.1 Python 二进制, 八进制, 十六进制数
    • 4.2 进制转换
    • 4.3 位运算
  • 5.Python字符集
    • 5.1 Python 中的 ASCII 码
    • 5.2 ISO 8859 系列字符编码
    • 5.3 CJKV Languages
    • 5.4 GB2312
    • 5.5 GBK Character Set
    • 5.6 GB18030
    • 5.7 Unicode

1.Python基础部分

1.1 注释

单行注释:以#开头
多行注释:三个双引号"""this is a commit""" 或’’’

1.2 格式化字符串

message = 'The price of this %s laptop is %d Yuan and the exchange rate is \
%4.2f Yuan to 1 Pound' % ( brand, 4980, exchange_rate )
'The price of this Xiaomi laptop is 4980 Yuan and the exchange rate is 8.69
Yuan to 1 Pound'
message = 'The price of this {0:s} laptop is {1:d} Yuan and the exchange rate \
is {2:4.2f} Yuan to 1 Pound'.format( brand, 4980, exchange_rate )
'The price of this Xiaomi laptop is 4980 Yuan and the exchange rate is 8.69 Yuan to 
1 Pound'

1.3 数据类型转换

int()
str()
float()

1.4 Python List(列表)

1.4.1基本

user_age=[18,19,20,21,22]

使用下标访问
从前往后,第一个下标为0,例如user_age[0]=18
从后往前,第一个下标为-1,例如user_age[-1]=22

1.4.2 列表切片

user_age[2:4]

“包前不包后”,即user_age[4]不包含在内

user_age[ 0:5:2 ]

步长为2,[18,20,22]

user_age[ :2]
[18,19]
user_age[1:]
[19,20,21,22]

1.4.3 常用方法

增:user_age.append(25) / user_age+=25
删:del user_age[5]

1.5 元组

小括号(圆括号)
不能更改值
使用下标访问

1.6 字典

大括号(花括号)
键值对(Key-value),所有的名字(name/key)必须不同,如果出现两个相同的name,将会被后一个覆盖。

1.6.1 生成

1.直接定义
2.dict()方法
Python语言程序设计 学习笔记(一)基础、方法函数、文件读写、数据表示以及字符集_第1张图片

1.6.2 访问

通过键来访问
Python语言程序设计 学习笔记(一)基础、方法函数、文件读写、数据表示以及字符集_第2张图片

1.6.3 常用方法

增:直接添加新键
Python语言程序设计 学习笔记(一)基础、方法函数、文件读写、数据表示以及字符集_第3张图片
删:del

1.7 输入输出

获取输入:

my_name = input( 'Please enter your name: ' )
my_age = input( 'Please enter your age: ' )
print( 'Hello, my name is', my_name, 'and I am', my_age, 'years old.' )

输出:
print()
可指定分隔符和结束符,默认会换行
Python语言程序设计 学习笔记(一)基础、方法函数、文件读写、数据表示以及字符集_第4张图片

1.8 布尔运算符

Python语言程序设计 学习笔记(一)基础、方法函数、文件读写、数据表示以及字符集_第5张图片

1.9 For循环在字典中的使用

.items() method returns iterable which contains ( key, value ) tuples
Python语言程序设计 学习笔记(一)基础、方法函数、文件读写、数据表示以及字符集_第6张图片

1.10 Range

Python语言程序设计 学习笔记(一)基础、方法函数、文件读写、数据表示以及字符集_第7张图片

1.11 异常

捕获异常,让程序可以跳过异常,继续完成执行。
Python语言程序设计 学习笔记(一)基础、方法函数、文件读写、数据表示以及字符集_第8张图片
Python语言程序设计 学习笔记(一)基础、方法函数、文件读写、数据表示以及字符集_第9张图片
Python语言程序设计 学习笔记(一)基础、方法函数、文件读写、数据表示以及字符集_第10张图片

2.Python 方法(函数)

2.1 基本语法

def <function name> ( <parameters> ):
	<code line(s) indented 4 spaces>
	return <expression>

2.2 全局变量和局部变量

A local variable can only be seen in some part of the program
A global variable can be seen in the whole of the program
If a local variable has the same name as a global, only the local variable can be seen in that
local scope

2.3 默认参数

def some_function( a, b, c=1, d=2, e=3 ):
...

2.4 可变长参数列表

def add_numbers( *num ):
	sum = 0
	for i in num:
		sum = sum + 1
	print( sum )

Python语言程序设计 学习笔记(一)基础、方法函数、文件读写、数据表示以及字符集_第11张图片

def print_member_age( **age ):
	for i, j in age.items():
		print( 'Name = ', i, ', Age = ', j, sep='' )
		# Note use of sep=''.

Python语言程序设计 学习笔记(一)基础、方法函数、文件读写、数据表示以及字符集_第12张图片
*args表示任何多个无名参数,它是一个tuple;**kwargs表示关键字参数,它是一个dict。并且同时使用*args和**kwargs时,必须*args参数列要在**kwargs前

2.5 参数的顺序

fargs formal (i.e. normal) arguments
*args non-keyworded variable length argument list
**kwargs keyworded variable-length argument list
If you want several of these in the same function, they must be in the order:
1. fargs
2. *args
3. **kwargs

3.读写文件

f = open( 'myfile.txt', 'r' )

’r’ is the Mode for reading

3.1 读写模式

w 以写方式打开,
W 文件若存在,首先要清空,然后(重新)创建
a 以追加模式打开 (从 EOF 开始, 必要时创建新文件)
r+ 以读写模式打开
w+ 以读写模式打开 (参见 w )
a+ 以读写模式打开 (参见 a )
rb 以二进制读模式打开
wb 以二进制写模式打开 (参见 w )
ab 以二进制追加模式打开 (参见 a )
rb+ 以二进制读写模式打开 (参见 r+ )
wb+ 以二进制读写模式打开 (参见 w+ )
ab+ 以二进制读写模式打开 (参见 a+ )

def safe_print_file( filename ):
	try:
		f = open( filename, 'r' )
		for line in f:
			print( line, end = '' )
		f.close()
		# Always close files when finished with
	except:
		print( filename, 'could not be opened.' )

3.2 读写二进制文件

在这里插入图片描述

def copy_binary_file( source_file, target_file, buffer_size ):
	try:
		sf = open( source_file, 'rb' )
		tf = open( target_file, 'wb' )
		msg = sf.read( buffer_size )
		# Read buffer_size bytes at a time
		while len( msg ):
			tf.write( msg )
			msg = sf.read( buffer_size ) 
		sf.close()
		tf.close()
		# Always close files when finished with
	except:
		print( source_file, 'could not be opened.' )

3.3 删除和重命名文件

We can delete a file:

import os
os.remove( 'test_file.txt' )

We can rename a file:

import os
os.rename( 'test_file2.txt', 'test_file3.txt' )

4.Python中的数据

4.1 Python 二进制, 八进制, 十六进制数

We can enter numbers in different
bases.
0b… Binary
0o… Octal
0x… Hexadecimal

4.2 进制转换

int( <num_string>, <base> )

Python语言程序设计 学习笔记(一)基础、方法函数、文件读写、数据表示以及字符集_第13张图片
十进制转二进制:bin( )
十进制转八进制:oct( )
十进制转十六进制:hex( )

4.3 位运算

x & y Bit AND x and y
x | y Bit OR x and y
x ^ y Bit XOR x and y
x << y Shift Left x by y bits 左移一位
x >> y Shift Right x by y bits 右移一位

5.Python字符集

5.1 Python 中的 ASCII 码

chr( ) gives character
with given ASCII code
ord( ) gives ASCII code of
given character
Python语言程序设计 学习笔记(一)基础、方法函数、文件读写、数据表示以及字符集_第14张图片

5.2 ISO 8859 系列字符编码

• ASCII (codes 0-127) plus
• Characters for a particular language (codes 128-255)

5.3 CJKV Languages

Major disadvantage of ISO 8859-1 - ISO 8859-10 is that it does not support CJKV
languages: Chinese, Japanese, Korean, Vietnamese.

5.4 GB2312

6,763 Simplified Chinese characters

5.5 GBK Character Set

Extension of GB2312 and backward compatible with it
Not strictly an adopted standard, but widely used

5.6 GB18030

Compatible with both GB2312 and GBK

5.7 Unicode

A computing standard aiming to encode text in all the world’s languages
The idea is to solve the character encoding problem

你可能感兴趣的:(Python,Python,编程语言,期末复习,学习笔记,大数据)