diff --git a/ex0_python_guide_x1.py b/ex0_python_guide_x1.py index 0c8f009fbe3c5c370376cfbdfb202fa2523f1a1c..80bf4d73d54bdc6f501d60c1381bd663921b7cd1 100644 --- a/ex0_python_guide_x1.py +++ b/ex0_python_guide_x1.py @@ -10,10 +10,10 @@ print("Hello world!") # 用于练习Python中不同的变量类型 def intro_variables(): - webpage_url = 'http://vis-www.cs.umass.edu/lfw/alpha_last_A.html' # 字符串变量 - image_number = 100 # 整数型变量 - image_scale = 1.5 # 浮点数变量 - image_png_only = True # 逻辑变量 + webpage_url = 'http://vis-www.cs.umass.edu/lfw/alpha_last_A.html' # 字符串变量 + image_number = 100 # 整数型变量 + image_scale = 1.5 # 浮点数变量 + image_png_only = True # 逻辑变量 print("I will download " + str(image_number) + " images from " + webpage_url) print("Only download PNG images: " + str(image_png_only)) @@ -31,8 +31,8 @@ def intro_variables(): # 用于练习字符串类型的定义方式 def string_define(): - webpage_url = 'http://www.baidu.com' - webpage_description = '这是百度网址,单引号里可用"双引号",还可以用回车符:\n这是新的一行。' + webpage_url = 'http://www.baidu.\n com' + webpage_description = '这是百度网址,单引号里可用"双引号",还可以用回车符:\n,表示是新的一行。' image_name = "car.png" image_description = ''' 这是图片描述。 @@ -46,7 +46,6 @@ def string_define(): print("图片描述:" + image_description) - # 用于练习字符串对象的函数操作、字符串子范围的选取 def string_object(): webpage_url = 'http://www.baidu.com' @@ -74,7 +73,7 @@ def number_object(): b = 4 c = a * a + b * b pi = 3.1415926 - pi_int = int(pi) # 转换成整数 + pi_int = int(pi) # 转换成整数 # 不同形式的输出 print(a) @@ -83,8 +82,7 @@ def number_object(): print(pi) print(pi_int) print("pi = " + str(pi)) - print("pi = {:5.2f}".format(pi)) - + print("pi = {:5.2f}".format(pi)) # 5位数,小数点后2位 # 用于练习列表的操作 @@ -113,10 +111,9 @@ def list_intro(): print(image_info[2]) - # 用于练习字典的操作 def dict_intro(): - image_info = ["image1.png", "PNG", 400, 800, True] + image_info = ["image1.png", "PNG", 400, 800, True] # 定义列表 print(image_info[1]) # PNG print(image_info[-1]) # True @@ -125,7 +122,7 @@ def dict_intro(): "width": 400, "height": 800, "isPNG": True, - } + } # 定义字典 print(image_info["name"]) # image1.png print(image_info["width"]) # 400 @@ -135,10 +132,8 @@ def dict_intro(): print(image_info["size"]) # 1024 - # 用于练习for循环的操作、判断 def intro_loop(): - # 假设已经获得了所有图片的名称 image_names = ["image1.png", "image2.png", "image3.jpg", "image4.gif", "image5.png"] num_images = len(image_names) @@ -155,10 +150,8 @@ def intro_loop(): print("Download image: " + image_link) - # 用于练习另一种方式的for循环 def intro_loop2(): - # 假设已经获得了所有图片的名称 image_names = ["image1.png", "image2.png", "image3.jpg", "image4.gif", "image5.png"] @@ -175,7 +168,6 @@ def intro_loop2(): # 用于练习for循环的中止 def intro_loop3(): - # 假设已经获得了所有图片的名称 image_names = ["image1.png", "image2.png", "image3.jpg", "image4.gif", "image5.png"] num_images = len(image_names) @@ -187,7 +179,7 @@ def intro_loop3(): name = image_names[image_index] image_link = "http://vis-www.cs.umass.edu/" + name - # 控制是否终止当前步或后继所有步的循环 + # 控制是否终止当前步或后继所有步的循环,continue 终止当前步,break 终止后继所有步的循环 if (image_index == 3): continue # 可以尝试将continue换成break来看差别 @@ -197,10 +189,8 @@ def intro_loop3(): print("Download image: " + image_link) - # 用于练习while循环的操作、逻辑操作符 def intro_while(): - image_names = ["image1.png", "image2.png", "image3.jpg", "image4.gif", "image5.png"] image_count = 0 @@ -219,7 +209,6 @@ def intro_while(): print("Cancel image " + str(image_count) + ": " + image_link) - # 用于练习while循环和输入操作 def intro_while2(): loop_count = 1 @@ -239,8 +228,7 @@ def intro_while2(): # 用于练习自定义函数文件的导入 def func_import(): - - # imageFuncs.py文件中包含自定义的函数 + # imageFuncs.py文件中包含自定义的函数 download_images import imageFuncs image_names = [ @@ -286,6 +274,8 @@ def lib_usage(): c = math.sqrt(a * a + b * b) pi3 = math.pi / 3.0 cos_pi3 = math.cos(pi3) + print("pi/3 = ", pi3) + print("cos_(pi/3) = ", cos_pi3) # 使用图像类库 from PIL import Image @@ -304,14 +294,12 @@ def numpy_intro(): a = np.array([(1.5, 2, 3), (4, 5, 6)]) print("\n Numpy Array:") - print(a) + print(a) # 自动赋予元素实数属性 print("a[1, 0] = " + str(a[1, 0])) - a10 = a[1, 0] - b = [[1.5, 2, 3], [4, 5, 6]] print("\n Python List:") - print(b) + print(b) # 和numpy的操作有所不同 print("b[1][0] = " + str(b[1][0])) @@ -320,32 +308,35 @@ def numpy_data(): # 导入numpy import numpy as np - # 在20到145之间产生数组,间隔为5 + # 在20到145之间产生5个数字组成的等差数列 time = np.linspace(20, 145, 5) print("\ntime = ") print(time) - data = np.sin(np.arange(20)).reshape(5,4) + # 产生0~19的数列,变成5*4,然后每个元素求sin() + data = np.sin(np.arange(20)).reshape(5, 4) print("\ndata = ") print(data) + # 保存数据 + np.savetxt("data.txt", data, fmt='%5.2f ') # 保存数据,设置格式 - np.savetxt("data.txt", data, fmt='%5.2f ') - + # 导入数据 data_import = np.loadtxt("data.txt") print("\ndata_import = ") print(data_import) + def func_call(): def download_images(image_names, max_num=5, onlyPNG=True): - img_num = 0 - for name in image_names: - if onlyPNG and (name[-3:] == 'png'): - print('Download PNG image: ' + name) - else: - print('Download image: ' + name) - img_num += 1 - if img_num > max_num: - break + img_num = 1 + for name in image_names: + if onlyPNG and (name[-3:] == 'png'): + print('Download PNG image: ' + name) + else: + print('Download image: ' + name) + img_num += 1 + if img_num > max_num: + break image_names = ['a1.jpg', 'a2.png', 'a3.png', 'a4.png', 'a5.gif'] @@ -353,7 +344,7 @@ def func_call(): download_images(image_names, 4, False) # 只提供前1个参数的值,其它参数取默认值 - download_images(image_names, 3) + download_images(image_names) # 只提供前两个参数的值,第3个参数取默认值 download_images(image_names, 3) @@ -368,29 +359,31 @@ def func_call(): def func_range(): def str_change(aStr, bStrList): - aStr = aStr.upper() - bStrList[1] = 'Python' - print('aStr in str_change(): ' + aStr) - return aStr, bStrList + aStr = aStr.upper() + bStrList[1] = 'Python' + print('aStr in str_change(): ' + aStr) + return aStr, bStrList aStr = 'Hello' bStrList = ['World', 'Ai'] str_change(aStr, bStrList) - print('aStr = ' + aStr) - print('bStrList = ' + str(bStrList)) + print('aStr = ' + aStr) # 数字、字符、字符串、元组等不可变对象,在函数内改变值后,函数结束仍为原值。 + print('bStrList = ' + str(bStrList)) # 列表、字典等可变对象,在函数内改变值后,函数结束后改变值。 - rst1 = str_change(aStr, bStrList) - print(rst1) + rst1 = str_change(aStr, bStrList) # 返回的变量值变了 + print(rst1) # 返回到同一元组 + print('aStr = ' + aStr) # 字符串变量仍不变 - rst1, rst2 = str_change(aStr, bStrList) + rst1, rst2 = str_change(aStr, bStrList) # 返回到两个变量中 print('rst1 = ' + rst1) print('rst2 = ' + str(rst2)) + # ------------------------------------------------------------- # 运行某一个函数的代码 # 1. 请修改下面的函数名 # 2. 然后点击PyCharm的运行按钮 # ------------------------------------------------------------- -intro_variables() +func_range() diff --git a/test_clone.txt b/test_clone.txt new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391