从0到1入门Python(笔记1)

Preparation before class

< First intro book of python for rookies >


Fundimental

tips:

1 文件开头加上 #coding:utf-8

2 function()基本可以无限嵌套

  • exp
a=3 
b=int(str(int(str(a))))
print(type(b))

run: 

3 Python区分大小写

一、变量

例:answer=42
answer = 42
标识符 赋值符
var赋值时,= 后可为int,int可进行四则运算;可为string,string可相加,表示链接多个string,可与int相乘,表示复制,复制次数=int,可套用函数。
  • exp
a=1/5+7*2-10
b='2'*2
c=int(b)
d='de'+' '+'amor'
code result
print(a) 4.199999999999999
print(b) 22
print(c) 22
print(d) de amor

二、print()

print()内可进行四则运算,可套用函数运算。
  • exp
code result
print(a+c) 26.2
print(a-c) -17.8
print(a*c) 92.39999999999998
print(a/c) 0.1909090909090909
print(type(c))

三、String

单引号和双引号公用是一样的,三个引号被用于过长段的文字或者说明,只要三引号不玩就可以随意换行写下文字。
string可相加,表示链接多个string,可与int相乘,表示复制,复制次数=int,可套用函数

1、string分片索引,string[ ]
  • rules

    lyric = "Isn't she lovely"

    I s n ' t s h e l o v e l y
    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
    -16 -15 -14 -13 -12 -11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1
  • exp

    lyric="Isn't she lovely"
    
    code result
    print(lyric[2]) n
    print(lyric[-3]) e
    print(lyric[0:10]) #the 10th is excluded,截取第0~第9个字符 Isn't she
    print(lyric[-4:-1]) #the -1st is excluded vel
    print(lyric[-1:-4] 空,说明无法R-->L倒排索引到字母
    print(lyric[-3:]) #From -3 to the end ely
    print(lyric[:7]) #From start to 7 Isn't s
  • 实际应用场景

    url = 'http://ww1.site.cn/14d2e8ejw1exjogbxdxhj20ci0kuwex.jpg'
    file_name = url[-10:]
    print(file_name)
    
    run result: 0kuwex.jpg
    
    phone_number1 = '13862861236'
    hiding_number1 = phone_number1.replace(phone_number1[3:7],'*' *4)
    print(hiding_number1)
    
    run result: 138****1236
    
2、字符串的方法

Python的对象拥有各种功能、特性,专业术语称之为——方法(method)
假设对象为 computer,computer可以计算。则语法可表示为 computer.calculate()

3、字符串格式化符

对于需要填空的情况,可用.format()进行批量处理。

  • exp
print('Thomas get {} runs in the {} inning'.format('2','8'))
print('Thomas get {run_number} runs in the {inning_number} inning'.format(run_number=3+1,inning_number='9+1'))
print('Thomas get {1} runs in the {0} inning'.format('2','8'))

run result:
Thomas get 2 runs in the 8 inning
Thomas get 4 runs in the 9+1 inning
Thomas get 8 runs in the 2 inning

变量需在.format()内赋值,否则报错,例子如下

run_n=1
inning_n=1
print(run_n)
print('Thomas get {run_n} runs in the {inning_n} inning'.format(run_n,inning_n))

run result:
1
Traceback (most recent call last):
  File "D:/python_lab/test.py", line 5, in 
    print('Thomas get {run_n} runs in the {inning_n} inning'.format(run_n,inning_n))
KeyError: 'run_n'






? 疑问

下面的代码为何可以先对变量赋值,然后可以带入,还需要学习

city = input("write down the name of city:")
url = "http://apistore.baidu.com/microservice/weather?citypinyin={}".format(city)

此段代码可以填补空缺中的城市数据






四、函数

Python3.50 版本有68个内建函数(build-in function)。
内建函数:就是python自带函数
python官网中对各函数的介绍:https://docs.python.org/3/library/functions.html

  • 创建函数
    • 常见语法单词

      1. def(即define)含义是创建/定义函数 ←关键字
      2. arg(即argument,参数)
      3. return(即返回结果) ←关键字

      Syntax 语法

      def function (arg1, arg2):
          return 'something'
      

      语法口诀

      Define a function named 'function' which has two arguments: arg1 and arg2, returns the result ---'something'

      注意!

      • 符号只能使用英文符号
      • 需要缩进的地方一定要缩进,缩进是为了表明语句和逻辑的从属关系,是python中最显著的特征之一。
  • exp
    def fahrenheit_converter(C):#定义Fahrenheit_converter函数,函数参数为 C
         fahrenheit = C*9/5+32 #定义变量fahrenheit与C的转换关系
         return str(fahrenheit)+'°F' #返回string化的Fahrenheit
    C2F =fahrenheit_converter(35) #定义变量C2F等于Fahrenheit_converter,参数值等于35
    print(C2F) #打印C2F变量
     
      ---
    run result:
    95.0°F
    
  • Practice
    def hypotenuse_calculator(a,b):
        h=pow(pow(a,2)+pow(b,2),0.5)
        return str(h)
    
    long_side=hypotenuse_calculator(3,4)
    print('the longest side equals to '+long_side)
    
    ---
    run result:
    the longest side equals to 5.0
    

五、传递函数与参数类型

传递参数的方式有两种:a.位置参数 positional argument b.关键词参数 keyword argument

  • 位置参数:按照参数的位置传入参数值的方式叫位置参数。

    def trapezoid_area(base_up, base_down, height):
        return 1/2*(base_up + base_down)*height
        
    trapezoid_area(1,2,3)
    
  • 关键词参数:直接带上关键词赋值,关键词的顺序可以随意排列。

    def trapezoid_area(base_up, base_down, height):
        return 1/2*(base_up + base_down)*height
        
    trapezoid_area(base_up=1,base_down=2,height=3)
    

    注意: 位置参数和关键词参数可混用,但关键词方式不能放在前部,且必须按照定义参数时,参数的排列顺序来。

  • exp
trapezoid_area(1,2,height=3)     #正确
trapezoid_area(base_up=1,base_down=2,3)    #错误
trapezoid_area(height=3,base_down=2,1)    #错误

?P48-50有疑问

六、设计自己的函数

  • exp

    def text_create(name,msg): #定义函数的名称和参数;
        desktop_path='c://users/lokoR/Desktop/' #open打开新建文件的路径
        full_path=desktop_path+name+'.txt' #传入的参数加上桌面路径再加上后缀就是完整的文件路径
        file=open(full_path,'w') #打开文件,'w'代表作为写入模式,意思是:如果没有就在该路径创建,如果有则覆盖
        file.write(msg) #写入传入的参数msg
        file.close() #关闭文本
        print('Done') #显示 Done
     text_create('hello','hello world') #给参数赋值,name=hello,msg=hello world
    

你可能感兴趣的:(从0到1入门Python(笔记1))