Python 学习笔记1
admin
2023-07-31 01:51:16
0

输出

python 的输出使用print 语法

print \"hello world\"  //hello world
//或者
print \"hello\", \"world\" //hello world
//或者
print \"hello\" \"world\" //helloworld

请注意上面的第二和第三个,一个使用,连接字符串,一个使用空格连接字符串,输出的结果中,逗号连接的中间有个空格,而空格连接的,中间没有任何东西

输入

python的输入使用raw_input函数

hello = raw_input(\"Input your word:\")
//括号中的参数表示输入的提示字符串,输入的结果保存在`hello`变量中

空值

python中的空值用None表示,类似于PHP中的Null

字符串编码

python 中的字符串编码问题,首先要搞明白asicii编码, unicode编码和utf-8编码之间的关系,这里总结如下:

asicii编码长度8位(一个字节),包含了所有的英文字母和一些常见的字符,
能够表示256种编码方式,比如字母a对应的asicii编码就是122(01111010),
因为英文总共也就只有那么些个字母和字符,所以一般情况下,asicii码表中的编码足够英文编码使用,但是其他的语言,比如中文,常见的中文字符就起码好几万个,
一个字节明显不够, 这就催生了针对中文的编码表,使用两个字节甚至是三个字节表示一个中文字符,
比如GB2312编码(2个字节表示一个字符), 但假如一个使用GB2312编码的文件,
被一个其他编码比如使用asicii编码的编辑器打开,
你看到的却都是乱码,这是因为asicii编码使用一个字节一个字节读取二进制文件(文件最终还是以二进制形式保存在磁盘中的)的关系,
每次读取的都是原来2个字节长度中的一半的长度,一个中文字符的一半,我们当然看不懂了。 unicode编码应运而生,
unicode编码实际上是一个大的编码表,
他使用最少两个字节表示一个字符的编码方式,每种语言占用了码表的某个段,在对应的段内编码自己的语言,比如

`a` 对应的unicode编码就是`00000000 01111010`。

这样,世界上的很多语言就能统一使用unicode编码进行写入和读取了 utf-8编码则是将unicode编码节约,
比如把英文字母定义为1个字节,中文字符定义为3个字节,这样英文字母中的前面的那么多没用的0位就能砍去了

python 早期不支持unicode编码, 但现在已经支持,使用u\”…\”语法, 可以输出中文内容了

print u\"中\" //中
print u\'\\u4e2d\' //中
u\"中\"       //u\'\\u4e2d\'

最下面的输出打印出的是的十六进制unicode编码, 在print的时候,u\"中\"u\'\\u4e2d\'的输出结果都是一样的
另外,如果要计算中文字符串的字符长度的话,也要带u,否则输出的长度就是字节长度,而不是字符串长度了

print len(u\"中\") //1
print len(\"中\")  //3

如果在编码文件中要输入或输出中文或者其他的非asicii编码的字符时,要在文件的第二行(第一行一般是#!/usr/bin/env python)加上# -*- coding: utf-8 -*-

list(列表) 和 tuple(元组)

list 和 tuple 类似于PHP中的索引数组,list和tuple的结构相似,但list可以随时进行写入和删除,而tuple一但初始化就不可以改动
list(列表):

  1. 使用[]语法表示,比如

    names = [\"Tony\", \"Sam\", \"James\"]
    
  2. 可以随时写入和删除

  3. 写入末尾使用append,

      names.append(\"Yi_Zhi_Yu\")
      print names //[\'Tony\', \'Sam\', \'James\', \'Yi_Zhi_Yu\']
    
  4. 插入指定位置,注意这个插入,比如要插入一个\”Gordon\”在\”Tony\”和\”Sam\”之间,\”Gordon\”的索引值就是1, 原先的\”Tony\”后面的所有元素的索引各+1

    names.insert(1,\"Gordon\")
    print names //[\'Tony\', \'Gordon\', \'Sam\', \'James\', \'Yi_Zhi_Yu\']
    
  5. 更新元素,使用类似于PHP的语法,直接对指定的索引位置的元素赋值

    names[1] = \"Wang\"
    print names//[\'Tony\', \'Wang\', \'Sam\', \'James\', \'Yi_Zhi_Yu\']
    
  6. 删除元素,使用pop语法,pop函数输出的是删除的元素值

      names.pop() //删除末尾
      print names //[\'Tony\', \'Wang\', \'Sam\', \'James\']
      names.pop(1)//删除指定位置(1位置\"Wang\")
      print names //[\'Tony\', \'Sam\', \'James\']
    

tuple(元组):

  1. 使用()语法表示
  2. 一但初始化,不可改变
  3. 单个元素的写法要加一个,,与算数运算中的括号区分开,如

    name=(\"Yi_Zhi_Yu\",)//(\'Yi_Zhi_Yu\',)
    

    python在显示单个元素的tuple时,也会带\”,\”, 如果不带的话,输出的就只是一个字符串了

    name = (\"Yi_Zhi_Yu\") //Yi_Zhi_Yu
    

学习参考:
廖雪峰python教程

相关内容

热门资讯

Mobi、epub格式电子书如... 在wps里全局设置里有一个文件关联,打开,勾选电子书文件选项就可以了。
500 行 Python 代码... 语法分析器描述了一个句子的语法结构,用来帮助其他的应用进行推理。自然语言引入了很多意外的歧义,以我们...
定时清理删除C:\Progra... C:\Program Files (x86)下面很多scoped_dir开头的文件夹 写个批处理 定...
scoped_dir32_70... 一台虚拟机C盘总是莫名奇妙的空间用完,导致很多软件没法再运行。经过仔细检查发现是C:\Program...
65536是2的几次方 计算2... 65536是2的16次方:65536=2⁶ 65536是256的2次方:65536=256 6553...
小程序支付时提示:appid和... [Q]小程序支付时提示:appid和mch_id不匹配 [A]小程序和微信支付没有进行关联,访问“小...
pycparser 是一个用... `pycparser` 是一个用 Python 编写的 C 语言解析器。它可以用来解析 C 代码并构...
微信小程序使用slider实现... 众所周知哈,微信小程序里面的音频播放是没有进度条的,但最近有个项目呢,客户要求音频要有进度条控制,所...
Apache Doris 2.... 亲爱的社区小伙伴们,我们很高兴地向大家宣布,Apache Doris 2.0.0 版本已于...
python清除字符串里非数字... 本文实例讲述了python清除字符串里非数字字符的方法。分享给大家供大家参考。具体如下: impor...